Alternative to multi-line lambdas: Assign-anywhere def statements
Ian Kelly
ian.g.kelly at gmail.com
Wed Feb 11 21:57:20 EST 2015
More information about the Python-list mailing list
Wed Feb 11 21:57:20 EST 2015
- Previous message (by thread): Alternative to multi-line lambdas: Assign-anywhere def statements
- Next message (by thread): Alternative to multi-line lambdas: Assign-anywhere def statements
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Wed, Feb 11, 2015 at 7:06 PM, Terry Reedy <tjreedy at udel.edu> wrote: >> I can't see why the parser would understand more easily >> >> def f(x): >> return x**2 >> than >> >> f = x-> >> return x**2 > > > The parser parses both equally well. That is not the issue. The compiler could at some point recognize that the function is being assigned to a simple name and transform the assignment into a def for purposes of byte code generation. It could also do the same with lambda, although it currently doesn't. The reason I don't like this replacing def isn't because the name is necessarily lost. It's because the lack of the well-defined def statement encourages more complex usages like functions['f'] = x -> x**2 where such implicit transformations won't work.
- Previous message (by thread): Alternative to multi-line lambdas: Assign-anywhere def statements
- Next message (by thread): Alternative to multi-line lambdas: Assign-anywhere def statements
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list