4 ms·
Unpopular opinion, but I find readability really hard on lisp projects. Everything has to be read backward, and just because you can nest 10 lambdas doesn't mea
by grumpy8 7y ago
Unpopular opinion, but I find readability really hard on lisp projects. Everything has to be read backward, and just because you can nest 10 lambdas doesn't mean that you need to nest 10 lambdas all over the place. So the code you end up with is write-only nested-over-nested-over-nested backward-reading code.
Can clean lisp be written? For sure, and it's magnificent. But in practice, it's a total shit show. Basically, what I'm saying is when it's great, it's amazing, and when it sucks it's the worst.. whereas other languages like java/javascript/python have less variance in code quality and range from ["pretty-meh to "good-enough"].
And what's happening these days is the great features of lisp are integrated with "good-enough" languages, and then they become "pretty-good" languages.
- singularity2001 7y agoNot that unpopular, even His Grahamness said something along those lines (quote from https://readable.sourceforge.io/ https://readable.sourceforge.io/)
- slifin 7y agoThreading macros -> and friends in Clojure change the ordering of reading and they're idiomatic, is that what you mean?
- pfdietz 7y agoEasy to add to Common Lisp. In fact, the CL code base I work on currently uses these. https://github.com/hipeta/arrow-macros/ https://github.com/hipeta/arrow-macros/
- ajkjk 7y agoI agree. Sure, I can understand lists and parens and all of the operators being out of order and the stupid abbreviated syntaxes and weird names for basic operations and the infinite nesting, but why would I want to?
- narag 7y agoUnpopular opinion... So four hours later it's buried under the "didn't fail" and "killer app" explanations. When a question is raised over and over again through the ages, it's because the answer (in this case, usability) is being dismissed every single time.