3 ms·
It's probably because, in an implementation of a staticly typed language, you have to treat all functions being passed around as closures. E.g. the type of a l
by Ono-Sendai 11y ago
It's probably because, in an implementation of a staticly typed language, you have to treat all functions being passed around as closures. E.g. the type of a lambda expression needs to be one thing, and that is a closure.
Whether or not any variables are actually closed over is irrelevant.
- nailer 11y agoCouldn't the type of a passed around function simply be 'function'? Why does it have to be inaccurate?
- Ono-Sendai 11y agoWell a function may in general have closed over arguments. Therefore it needs to be a closure. (If you have lexical scoping that is)