[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Rather, DSSLs increase modularity, productivity
Dan Sugalski <dan@sidhe.org> writes:
> To a large extent, yes. But don't discount the startup costs here -- if
> you start with lex and yacc you're starting with the intent to build a
> full language. Many, possibly most, DSLs start as a sort of a hack because
> someone needs the functionality and it was easy enough to hand-code
> something to get by. Things quickly get out of hand from there. :)
The most effective argument I ever made for using a pre-existing
extension language, rather than inventing one from scratch, went
something like this:
Don't put yourself in a situation where, five years down the road, you
have to write a paragraph in your manual like this one (from the GNU
Make manual):
Commas and unmatched parentheses or braces cannot appear in the
text of an argument as written; leading spaces cannot appear in the
text of the first argument as written. These characters can be put
into the argument value by variable substitution. First define
variables `comma' and `space' whose values are isolated comma and
space characters, then substitute these variables where such
characters are wanted, like this:
...
My comments at LL3 in defense of sloppiness aside, I think a lot of
the worst language design happens via the incremental addition of
features, while trying to preserve backward-compatibility. I think
that's the explanation for the Bourne shell and the C shell.
But where this leads, I don't know. I just hope it's to something
more helpful than "You shoulda thunk harder [dope slap]."
- References:
- Re: dual-language systems increase modularity
- Re: dual-language systems increase modularity
- From: Michael Vanier <mvanier@cs.caltech.edu>
- Rather, DSSLs increase modularity, productivity
- From: Mike Newhall <mike@newhall.net>
- Re: Rather, DSSLs increase modularity, productivity
- From: Dan Sugalski <dan@sidhe.org>
- Re: Rather, DSSLs increase modularity, productivity
- From: Mike Newhall <mike@newhall.net>
- Re: Rather, DSSLs increase modularity, productivity
- From: Dan Sugalski <dan@sidhe.org>
- Re: Rather, DSSLs increase modularity, productivity
- From: Miles Egan <miles@caddr.com>
- Re: Rather, DSSLs increase modularity, productivity
- From: Dan Sugalski <dan@sidhe.org>