4 ms·
I like the part where he notes that this isn't a real problem except that it creates centithreads of argument from people who believe it to be a real problem.
by supersillyus 16y ago
I like the part where he notes that this isn't a real problem except that it creates centithreads of argument from people who believe it to be a real problem.
As I grow older and less idealistic, I'm more sympathetic to the notion that problems in theory but not in practice aren't really problems.
- alec 16y agoI write "real code" in Common Lisp, and I used something like what he dismissed as "useless in practice" twice today to make my code more readable and maintainable. I do not consider myself a Lisp advocate when I bemoan the lack of sane scoping semantics most similar languages just get right; I just want to write better code.
- jerf 16y agoYes, but Lisp code and Python code aren't the same when program in the native idioms. In Python if your function references are buried within each other deeply enough that this is even an issue you're already doing it wrong. This is not because Python is lacking power, but because you're not using the power Python actually has. With the generators, comprehensions, objects that implement __call_, bound method references, and all of the other tools available to you, you just shouldn't be defining functions in functions in functions. In Haskell where it's all functions everywhere, a function that is actually ten layer nested functions calling each other makes sense. (When using the "do" syntax sugar, every line that has <- is another nested function, so if you see ten <-s, you've got a ten-layer deep nested function. (Or eleven, if I've committed a fencepost error.)) If you're still fighting with Python by trying to jam functions in three layers deep, take a moment and try to learn to be more idiomatic. If you're in Haskell or Lisp and you never have functions three layers deep, take a moment and try to be more idiomatic. In practice, you do not need this in Python.
- deleted 16y ago[deleted]