News for hackers. Stuff that matters.
Re:Not Lisp again (2009) by chongli on Tuesday May 02, 2017 @12:56PM (#14248114)
You left out a rather glaring objection:

7 - Lisp has a tendency to lure programmers up the river of insanity [0] due to the sheer power of macros (particularly reader macros). This can leave the rest of the team (or any successors) struggling with a mountain of technical debt. Overall, I think the power of Lisp makes it difficult for a community to organize without a BDFL to keep everyone on the same page.

[0] http://tvtropes.org/pmwiki/pmwiki.php/Main/RiverOfInsanity

Re:Not Lisp again (2009) by wtetzner on Tuesday May 02, 2017 @01:28PM (#14248462)
Yeah, this seems to be a common objection, but in my experience of actually having used a lisp (Clojure) in production, this was never a problem. Sure, you'll likely still end up with some technical debt, but no more than the Java project's we had at the same company. And not because of macros.

When people first learn about macros, they go crazy trying to do all kinds of things that weren't possible without macros. But once developers gain a little experience with macros, they learn to use them judiciously and tastefully.

Re:Not Lisp again (2009) by chongli on Tuesday May 02, 2017 @01:36PM (#14248557)
Clojure has a BDFL (Rich Hickey) and it lacks reader macros. It's kind of the exception that proves the rule.
Re:Not Lisp again (2009) by zeveb on Tuesday May 02, 2017 @02:13PM (#14248985)
To be fair, though, the macro-based River of Insanity newbie Lispers sometimes travel down is rarely based on reader macros.
Re:Not Lisp again (2009) by Chris2048 on Wednesday May 03, 2017 @10:52AM (#14256161)
I think one problem with certain 'declarative' styles, is that imperative code is, in a sense, temporarily ordered.

When you lose this, you need to replace it with some other enforced order, that helps you navigate the code.

Think how much debugging is based on locating buggy code by walking through the execution path and/or data-path. When you lose that kind of strictly linear execution, you still need a layer of heavy modulation to compensate.

Consider reaching a state of https://www.emacswiki.org/emacs/DotEmacsBankruptcy you can easily modify the editor in any way from any file, so you really need to use in-build tools to navigate how the environment is affected by the config files.