We're saddened at your unhappiness with the current direction, and
glad that you have made a concrete effort at defining a suitable
alternative semantics for special indentation extensions.
Currently, however, the consensus seems to be "sweet-expressions will
not switch directions, in any way, to use Arne's formulation." As
discussed in the other thread, Proposal: ENLIST (Arne's ":"),
, there are some issues which lead us to turn down your two
Personally, I feel that your combined proposal can be made to work in
a language that is restricted to operate in ASCII, or if you have an
underlying implementation that reliably uses the same encoding as the
programmer. With effort, it can be made to work even with
double-width CJK characters and other Unicode nastiness.
However, our goal is to develop a general notation that can be
applicable across many Lisplike languages. Lisp is easy to implement
- the original 'eval' definition was barely a page of text - and it's
easy to parse for programs. Hence, the existence of many Lisps.
Adding an indentation processor is already a tremendous complication
in the parsing, but handling the full generality of Unicode would be
an even worse complication (unless you restrict the important parts of
the code, or even the entire code, to ASCII).
Granted, your approach can be implemented using some sort of
preprocessor separate from the core Lisp implementation; in fact, it
seems to be defined so that this is easy (hence the need to denote
single items with ".") and the preprocessor does not even need to
actually understand Lisp syntax (meaning that potentially, a single
preprocessor implementation can work with many Lisp implementations -
the Lisp implementations just need to implement n-expressions, or even
just curly-infix, both of which are far more trivial to add than
indentation). This may be considered a point in its favor, although
it certainly risks falling into the One True Implementation.
We hope you continue to work with or on indentation-based syntaxes for
Lisp, whether sweet-expressions, your current proposal, or some other
future notation you can develop.
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
Readable-discuss mailing list