Thanks.  An interesting story.<p>About your last paragraph: What's so special about closures?  They have been in lambda-calculus for ages.  And lambda-calculus just formalizes mathematicial function application and abstraction. (OK, I guess most mathematicians are not aware of lexical scoping.  But it springs naturally from alpha equivalence, a notion that every mathematician agrees with intuitively.)<p>Of course coming up with the mathematical ideas and notations in the first place wasn't easy.  But closures pre-date computers.  The computer scientists `just' had to find ways to implement them effectively.