It’s been particularly helpful to examine the HN source code, written in Arc, to better grasp what Paul means by each of his points (e.g., macros, language as data, etc.). I’ve also read through the entire proposal for Bel.
I think I understand the advantages of Lisp. It has a higher barrier to entry due to the parentheses syntax and the functional, non-object-oriented way of thinking. But once you overcome these challenges, Lisp makes it easy to build a new language for your domain, allowing for more conceptual compression. This is what ultimately enabled Viaweb to outpace competitors, implementing new features with such a small team at incredible speed.
It struck me that Lisp’s advantages and disadvantages parallel those of Linux. The “Lisp is the best language” argument lands similarly to the “Linux is the best OS” argument. Is there an opportunity for Lisp to learn from Linux?
The brilliant strategy of OS X when it came out was to build on top of Linux to gain its benefits while addressing the difficulties that made it challenging for novice computer users.
Is there an opportunity for someone to create a Lisp that harnesses all of its power but with an easier learning curve?
Paul argues that the parentheses and Polish notation are inherent consequences of the language’s power. This is one point I still don’t fully grasp. Why can’t the syntax of Lisp be made more approachable (more “reads like English”) while still maintaining its power?