top | item 28991983

(no title)

rwhaling | 4 years ago

Algol 60 had lexical scoping in 1960 (while Lisp was in development) and this was known to be equivalent to the lambda calculus by the folks working on it by 1965 or so - https://dl.acm.org/doi/10.1145/363744.363749

I think the consensus is that Scheme was the first Lisp to fully embrace lexical scope, in 1975?

[edited for clarity and punctuation]

discuss

order

agumonkey|4 years ago

But james slagle issue came before algol was finished, and IIRC some algol document mentions the funarg problem too, so there was crosspollinisation.

kazinator|4 years ago

There is also the fact that if you have assoc lists, you can trivially easily write a badly performing but correctly lexical lisp interpreter in dynamic lisp, and I suspect this was consciously known. Maybe not enough people cared?

kazinator|4 years ago

I believe Algol 60 had downward-funarg-only lexical scoping, whereby if you return a function with a captured environment, the coach turns into a pumpkin (unless it is somehow disallowed).

Lambda Calculus specifies the real deal; functions can calculate functions.