>It's also why you don't get multi-line lambdas. Everything is a compromise.
Arguably too much of a compromise. This is just Guido doing a "because I say so" and imposing his bias against functional programming. Give me a properly-designed language like Ruby any day over Python's bag of compromises.
On the other hand, as someone who reads other peoples code just as my as I write my own, maybe by the time your lambda is many lines it should have its own name. And maybe the name should be really informative about what the function does.
And yet Ruby never took off outside of RoR and is dying. Lisp and Haskell are still niche languages.
So somehow, languages promoting big chunks of anonymous code never win never win the public heart.
In fact, when you are force by an accidental monopoly to use ine, you get js. What do people do in JS ? Multline lambda are mapped to property names or replaced with await. Registries are used in every framework. We spent 2 decades fixing JS to use as little callback hell as possible.
Arguably too much of a compromise. This is just Guido doing a "because I say so" and imposing his bias against functional programming. Give me a properly-designed language like Ruby any day over Python's bag of compromises.