Boost logo

Boost :

From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2006-02-21 07:57:04


> -----Original Message-----
> From: boost-bounces_at_[hidden]
> [mailto:boost-bounces_at_[hidden]] On Behalf Of Paul Mensonides

> Well, it isn't a good option, IMO, even in an in-house
> project. A DSEL is better than a non-embedded DSL (e.g.
> Spirit compared to YACC) for a variety of reasons. It is
> better to do as much as you can with what you have (i.e. the
> language). External tools for code generation should only be
> used as a very last resort. More important than the
> introduction of another build step, the use of external code
> generators creates a significant barrior to entry and
> represents an unbounded number of possible code constructions
> (that aren't part of C++) in C++ code. It comes down to the
> same reason that a standard definition of C++ is
> important--which is not just portability, but portable understanding.

This reminds me, BTW, of the "intentional programming" paradigm. The really
powerful part of that paradigm is that you can do anything--i.e. even with the
syntax itself. The really problematic part of that paradigm is that you can do
anything--i.e. even with the syntax itself. IOW, it becomes a collection of
anything and everything all thrown together--there is no coherent language, just
a language system. One of the benefits of a more finite language is that the
set of semantics is also finite--and that really is a good thing overall
(despite how often we may beat are heads against it).

Regards,
Paul Mensonides


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk