Riccardo aka @entropiae
Python in the streets
Erlang/Elixir (currently) in the sheets
(almost) every developer has its own idea about functional programming.
Focus on Tail Call Optimization
len([1, 1/0, '3']) == 3
No side effects
Perfectly pure, almost useless
Practicality beats purity.
Memoization
Full support for Multi{core, cpu, node} archs
Compiler optimization
..coz everything is an object..
..we have first-class functions! 🎉
map(lambda x: x + 1, [1, 2, 3]) == [2, 3, 4]
filter(lambda x: x % 2 == 0, [1, 2, 3]) == [2]
reduce(lambda x, y: x + y, [1, 2, 3]) == 6
The cornestone of higher-order functions
There should be one - and preferably only one - obvious way to do it.
GvR doesn't like them 😕
functools, itertools