The wikipedia page about closures says:
---
The term closure is often mistakenly used to mean anonymous function. This is probably because many programmers learn about both concepts at the same time, in the form of small helper functions that are anonymous closures. An anonymous function is a function literal without a name, while a closure is an instance of a function, a value, whose non-local variables have been bound either to values or to storage locations (depending on the language; see the lexical environment section below).
---
It makes me confused because I actually thought they were the same thing.
Does it mean an anonymous function can be a closure but not necessarily?
Or does it mean an anonymous function is always a closure but a closure is not always an anonymous function?
Uhhh...
Syntactic sugar that reduces code is good but the syntax should also be intuitive and simple. I also don't think Delphi's syntax for this feature is good. It conflicts with the rest of Pascal.
We have a warning example about syntax gone out of hands, namely C++.