On 8 January 2014 05:31, Mouse <mouse at rodents-montreal.org> wrote:
Incidentally,
"homoiconicity" just means that they wrote the language
back-end and then knocked off without bothering with the front-end,
so you have to enter your program as a raw AST instead.
Careful. Not only is this statement wrong, it comes awfully close to
exhibiting zealotry of your own. (If you don't understand why or how
it's wrong, I refer you to the Wikipedia page "Homoiconicity".)
I think you misunderstand what Peter was alluding to.
Remember that S-expressions were only meant to be an internal
representation and the original plan was that programmers would
actually use M-expressions with a more traditional notation.
This never happened because some programmers found that it was
perfectly possible to work in S-expressions, and proficiency in doing
so has become something of a shibboleth among Lispers: "real men work
in S-expressions".
This has led to the neglect of Lisp-like languages or extensions with
higher-level syntax, such as Dylan, CGOL or Sweet Expressions, and
erects a huge and forbidding barrier to the adoption of Lisp. The
problem being that Lispers are mostly fine with this: they learned, so
why shouldn't everyone else? Which means that it becomes a vicious
circle. Lisp has an offputting and peculiar syntax, but Lispers have
climbed this wall and learned it; and that syntax does have
advantages, so Lispers disdain any attempt to fix it; meaning that
Lisp remains a niche language and always will.
Yes, prefix notation makes macros easier, because Lisp handles lists
and Lisp code is made of lists. Thus, prefix notation and macros
together form a unique strength of Lisp. However, prefix notation
makes /everything else/ harder and stops non-Lispers considering Lisp.
Most Lispers seem to be fine with this. Result: marginalisation.
Languages which replace prefix notation and S-expressions and use
algebraic infix notation, such as Dylan and David Moon's PLOT, still
support syntactic macros, but are also readable by non-specialists...
but they are shunned by Lispers, and thus they too remain obscure and
marginal.
--
Liam Proven ? Profile:
http://lproven.livejournal.com/profile
Email: lproven at cix.co.uk ? GMail/G+/Twitter/Flickr/Facebook: lproven
MSN: lproven at
hotmail.com ? Skype/AIM/Yahoo/LinkedIn: liamproven
Tel: +44 20-8685-0498 ? Cell: +44 7939-087884