I get why a lot of people dislike #python. Recursion is pretty much impossible.
@jelle_dc I enjoy functional programming a lot, and was getting really good at it in JS but the deeper I get in Python the more counterintuitive things seem.
@_paulhg_ yeah, that's intentional. Guido is rather pragmatic and explicitly doesn't want python to be functional (and really, as a person who's quite fond of haskell, I can't say more FP constructs would have much added value for python).
Python's motto is "There's one obvious way to do it" and if you dislike that one way you're probably gonna dislike python. If you want to try and compromise on "Pragmatic FP" functoolz is worth checkout out though https://toolz.readthedocs.io/en/latest/api.html
@_paulhg_ yo I hate Python TOO
@_paulhg_ there's libraries that provide a tail call optimization decorator but they're all just hacks, really. Recursion is unpythonic because Guido says so.
OTOH, even though python is supposed to explicitly not be a functional programming language, if you do want to do functional programming, list comprehension, generator expressions and the functools library are there by default and they'll get you pretty far.