Měl problém s víceřádkovými lambda funkcemi. Po zkušenosti s cofeescriptem mu musím dát za pravdu. S přidáním víceřádkových lambda funkcí se pravidla odsazování dost komplikují. Docela jednoduše by šlo přidat něco jako Ruby bloky se syntaxí podobnou with. Před lety se o tom uvažovalo. Nevím proč se od toho upustilo.
Co si pamatam ja, tak mali sa z Pythonu odstranovat vsetky funkcionalne prvky: lambda, reduce ...
Mohlo to byt tak okolo roku 2005 ? Myslim, ze vtedy sa uz hovorilo o Pythone 3. Takze neviem, ci sa to netykalo iba Pythonu 3. Ja som doteraz na Pyhon 3 este nepresiel, takze neviem ci to tam je, alebo nie. Stale pouzivam iba Python 2, t.j. teraz mam 2.7.x a tam lambda stale je.
reduce se presunulo do jineho modulu (neni to tedy built-in), ale lambda zustala. Bohuzel lambda v Pythonu je pouzitelna jen omezene - muze to byt jediny vyraz. Taky se v Pythonu tezko resi uzavery - jde to, ale trosku nesikovne (globalni vs. lokalni vs. 'uzavrene' promenne) - tady to ma lip resena Lua.
tady je to vysvetleno http://python-history.blogspot.cz/2009/04/origins-of-pythons-functional-features.html
nerikam, ze s tim souhlasim, ale co uz :)
O Scalu jsem se dřív docela zajímal -- bohužel má ekosystém Javy; nic proti Javě, ale Python se dá dost ohýbat, být obalem nad C/C++/Rust knihovnou -- většina ML knihoven v tom našla zalíbení jako API vrstva -- k čemuž je Python opravdu ideální. Navíc Scala je podle mne sice v základu jednoduchá, ale code-style je stejně nejasný jako např. v C++ -- co programátor, to trochu jiný přístup.
Zkoušel jsi tohle? https://github.com/murarth/rusti
Teď jsem na to narazila a nevypadá to špatně :)
Něco se plánuje: https://www.python.org/dev/peps/pep-0557/.