On Sat, Feb 13, 2010 at 02:04:42PM +0000, Vegard Øye wrote:
Date: Tue, 9 Feb 2010 11:54:28 -0500 From: [email protected]
Anyway, my basic point is that if you want to see Elisp improved, there are more elegant languages than Common Lisp to use as your model.
It's an interesting debate. What other languages do you have in mind?
Just drawing from my own experience, Scheme and Haskell. I think that Common Lisp is often harder to read than it needs to be because it often uses auxiliary information like keywords where alternative functions would be more appropriate. An example that always comes to mind is right reduction (folding): Common Lisp: (reduce #'func seq :from-end t :initial-value init) Scheme: (fold-right func init seq) Haskell: foldr func init seq The meaning of both the Scheme and Haskell versions is obvious, but the Common Lisp version makes the reader study extra information in order to get the meaning. The meaning of the program is a step removed from from its textual representation. Semantics can be a nuanced and subjective topic, but I hope that language designers (like those of Elisp) will always be mindful of semantics, because programs that are easier to read are easier to think about. I hope what I have said makes some sense. -- John Foerch