Primitives in Generics
Neal Gafter
neal at gafter.com
Fri Jul 9 15:23:47 PDT 2010
On Fri, Jul 9, 2010 at 2:38 PM, Pavel Minaev <int19h at gmail.com> wrote:
> On Fri, Jul 9, 2010 at 2:23 PM, Neal Gafter <neal at gafter.com> wrote:
> > "closures" is slang for lambda expressions, which means lexically-scoped
> > function-valued expressions. Unfortunately, what is Brian is now calling
> a
> > lambda expression is neither lexically scoped nor function-valued.
>
> Pragmatically, "closures" is slang for "those cool function-like
> things like in JS/Ruby/C#/...". Few programmers in the wild are
> actually interested in conceptual purity. It doesn't matter if some
> bits are not "properly" lexically scoped, if all (or even most) of
> those that matter are.
>
Well, perhaps nothing really matters at
all<http://www.lyricsfreak.com/q/queen/bohemian+rhapsody_20112599.html>.
Few programmers in the wild are actually interested in the language
specification until the issues begin to interfere with their effective use
of the language. It is the language designer's job to make sure that
doesn't happen.
By the way, why do you say that the proposed lambda expressions aren't
> function-valued? Is that because they don't have an expressible type?
>
It is because they aren't of a function type, which is because function
types have been dropped.
> If so, then do you imply that C# lambdas aren't closures, either?
>
C# lambdas are indeed of "delegate" types, which are function types.
More information about the lambda-dev
mailing list