help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: problems with Emacs 28


From: Jens C . Jensen
Subject: Re: problems with Emacs 28
Date: Wed, 28 Oct 2020 17:21:16 +0100

> From: Emanuel Berg via Users list for the GNU Emacs text editor 
> <help-gnu-emacs@gnu.org>
> Date: Tue, 27 Oct 2020 01:29:03 +0100
>
> method - a function belonging to an OOP object
> procedure - a function that don't return a value
> function - a function that do return a value

These are the terms I recall as well. but it seems this terminology is muddy at 
best, seeing as how you described each one in terms of 'a function that...'. 
But I'm stumped with what else to call them, `callable' maybe? :-)

> destructive - changes the value in the actual argument variables.
> It would seem this requires "call by name" or "call by reference", not
> "call by value", right? (Unless the value is a memory location,
> perhaps...)

Yes, or if the context is implicit (e.g. in methods mutating local variables).

> side-effect free - the function doesn't do any changes to anything,
> this implies non-destructiveness

Which is also known as a 'pure' function.

> many Haskell programmers, they like to
> divide their programs in two parts, one with side-effects, and one
> without. This is for different reasons, one advantage would be
> modularity, as the side-effect free part can be brought to any other
> program without ever screwing anything up.

And testing side-effect free code tends to be simple, not having to construct 
class-hierarchies to test (or worse, debug!) some obscure state is a big boon.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]