Hacker News new | ask | show | jobs
by rwhaling 1692 days 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]

2 comments

But james slagle issue came before algol was finished, and IIRC some algol document mentions the funarg problem too, so there was crosspollinisation.
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?
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.