> On Wed, Aug 22, 2012 at 11:39 PM, Bart Massey <
ba...@cs.pdx.edu> wrote:
>> * M4 is useful for DSL prototyping
>
> I remember those dark years well, wandering the nightmare corpse-city built
> upon measureless KLOC of m4. Within its non-Euclidean halls staggered the
> lost souls, their emaciated bodies lurching blindly towards anything that
> their rotting minds mistook for a "divert", gibbering madly to themselves,
> "I just need to add one more layer of metaprogramming and then it'll finally
> all be over!" I have screamed until nothing but "dnl" came forth from my
> lungs. I have stared deep into the tentacled void of nested "define" and
> made sordid deals with the grinning teeth within, feeding hapless interns
> into its star-shaped maw to appease it, albeit for just a brief moment. Oh
> the hell-wind, titan-blur, black wings ... K&R save me from the four-lobed
> macro preprocessor of the ancients ... gaaargh!!
Very nice.
> Um. Er. Yes, I would be interested in hearing about the best practices of
> applying m4 to practical DSL development in an enterprise environment.
> *twitch* *twitch*
>
> -Iä! Iä!
I don't quite know what an "enterprise environment" is
(sounds...enterprisey); I've used an M4 DSL for my MS thesis (assembly
generation from compiler intermediate code), for my PhD dissertation
(description of AI planning problems), and for the XCB project
(description of C API). All three were successful, IMHO. And none of
them looked like autotools or sendmail config, even a little.
What I'm trying to say, I guess, is that I have strode the night sky
wielding the mighty Hammer M4, smiting those problems which dare to
interfere; speaking the language of the Gods, and daring the Gods to
answer. The Gordian Knot of compiler output processing fell before me;
the Oracle of the Unseen Intelligence fell silent at my wisdom;
Promethean, I set free the fire of the X protocol. Let those who doubt
the strength of my weapon face it, and quail!
-Cthulhu Fhtagn!
--Bart