4 ms·
Multi line anonymous functions. An anonymous function is just as good as a true function in JavaScript. Lambdas are incredibly limited and encourage the declar
by code_runner 4y ago
Multi line anonymous functions. An anonymous function is just as good as a true function in JavaScript.
Lambdas are incredibly limited and encourage the declaration of a whole separate function that now lives physically far from its use.
List comprehensions are also really underpowered and I personally hate the map and filter functions and their goofy list-like types.
Check out linq in .net, streams in Java, array in JS, collections in scala to see the expressive power of a fluent interface on collections
- beckingz 4y agojust make a function at that point??
- Spivak 4y ago> declaration of a whole separate function that now lives physically far from its use Why are you doing that? Just declare the (named) function right there where you’re gonna use it. If it’s any endorsement CPython does it all the time. > I personally hate the map and filter functions and their goofy list-like types. You mean iterators? There’s nothing else they could possibly return. Map and filter are lazy and work with arbitrary iterables even ones that never end or have no possible way to define bind.
- Izkata 4y ago> Why are you doing that? Just declare the (named) function right there where you’re gonna use it. If it’s any endorsement CPython does it all the time. I think a lot of people have no idea nested functions exist in python...
- baq 4y agoAnd nonlocal, if they want to go to js-land for a second.
- LionTamer 4y agoCompletely agree. Once I discovered Java Streams it became so much more frustrating for me to write Python code that manipulated collections in anything beyond the most trivial of operations.
- idealmedtech 4y agoWhenever I want a lamba that's multiline, I usually just declare a nested function. Usually pretty clear, and reusable, and same scope rules as a lamba