Thanks Robert for that perspective on the history and philosophy of lfe.
I don't actually think we are that far apart in our thinking.
From what I see where we maybe differ is
1. I'd prefer to get rid of the cruft collected during the history and generally offer one way of doing things rather than multiple
2. I'd be far more happy to not follow the old lisps (scheme and cl) and instead go our own lfe way and if in doubt rather borrow from modern lisps like clojure.
Simplicity is important to make learning the language easier. Yes, you yourself only need to learn one variant but if you want to read other people's code you suddenly have to know both progn and begin, mref and map-get, ...
Following an existing lisp helps if the learner can then transfer knowledge from the other language. But since neither cl nor scheme match well that doesn't really happen.
cl is great -- but the good bits are clos, generic functions, keywords etc., i.e. all the stuff we don't get. What is old and crufty, the "secret handshake language" of car, cdr and their friends, the extra parens in let, etc. -- all that is what we get.
I am sure I don't understand all the decision that went into it, all I can say is that to me as basically an outsider coming in to lfe, the language feels weird at times.
BTW: While thinking about this, I tried to see what there actually is in syntax in lfe and compiled a list of predefined things I could find:
https://gist.github.com/hdurer/b2850329e3d444ce2df8 The comments there maybe help understand where my problems are.
Also: A big +1 to looking towards the Elixir community. I don't have good visibility of the ecosystem but to me it certainly seems like Elixir is the big thing in Erlang land that if not bigger yet is likely to eclipse Erlang itself. Support to make use of their modules would be quite interesting.