> On Behalf Of John Randall
> 
> It seems to me that many of J's primitive verbs are pure functions, and
> there is a fairly small amount of state in the exceptions.
> 
> Obviously ? is a long way from being a mathematical function: it is
> specifically designed to give a different result every time it is called.
> 
> Input and output functions do not fit well into this scheme.  Input
> functions return a different value each time they are called, and so
> cannot be memoized:  output functions have side effects and so cannot be
> lazily evaluated.

In addition, a verb free of side effects is suitable for concurrent
(parallel) execution (even '?' itself is suitable for most applications).

> 
> Most of the others are OK.  The major drawback is comparison tolerance.
> 
> Has there ever been consideration of moving J in a more functional
> programming direction?  In particular, memoization would be very useful,
> and would seem to be compatible with J's execution model.


> 
> Best wishes,
> 
> John



----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to