Robin Poppleston writes:
> To me the
> compelling argument was not the [%.....%] way of making lists (invented
> by Rod Burstall, who might wish to live it down) but the need to implement
> arrays as "memoised" functions (the term "memoised" was invented by Donald
> Michie, who proposed the most general form of the concept). An array had to
> be a closure of a variadic function, which was most easily supported by
> leaving the stack open.
But in the light of languages such as Standard ML, do you still think this
decision was justified? Standard ML doesn't have the notion of variadic
functions directly but has tuples. This means that writing memo functions
in SML is a cinch -- except that strong typing gets in the way of writing
a general purpose hash function, of course.
I think the open stack is better than sliced white bread. But I don't
feel concerned about its relationship with the lambda calculus. I'm
just interested in how Robin feels about this argument given the advances
in programming language technology.
> One final virtue of the open stack is that it provides for the associative
> combination of the results of procedures.
I presume you mean this sort of thing ....
vars square = dup <> nonop *;
Steve
|