>Seems to me common wisdom is that extending syntax leads
>to readability problems, and makes integrating modules harder.
But when there is a *syntax that is traditionally used* for what
you're doing it seems to *increase readability*.
For instance, when you embed a "Logic Programming Engine" .
I think it's better to provide *the syntax that is traditionally used
to write these types of programs*, namely Prolog Syntax.
This makes the logic engine in a recent book on parsing in Java more useful:
Building Parsers With Java (2001)
Steven John Metsker
And Schelog with a unique s-expression syntax that you have to learn from scratch
less useable than it could be:
It's syntactic sugar leaves a bad after-taste. ;)
Generic programming: one syntax -> multiple semantics ?
.NET Common Language Runtime: many syntaxes -> one semantics ?