[antlr-interest] ITLS

John D. Mitchell johnm-antlr at non.net
Mon Nov 22 18:43:39 PST 2004


>>>>> "Sebastian" == Sebastian Kaliszewski <sk at z.pl> writes:
>>>>>> John D. Mitchell wrote: [snip]
[...]

>> I'm saying that general purpose programming languages (GPPLs) almost
>> completely miss that point and therefore the code that people write in
>> those GPPLs are almost always extremely poor, confusing, bug-ridden,
>> etc. implementations of the informally-specified (usually implicit),
>> horribly designed (usually accreted rather than actually designed)
>> languages that the programmer is creating and manipulating.

> Well, just to clarify things and make your point more clear, which (might
> be no GPPL -- I 100% agree that typically they are bad) language you like
> then?  Or which one is closest to your likings, or at list a step in
> right direction? Or what your ideal language be look like?

I mostly treat GPPLs as just another tool.  Most of the GPPL selection in
the projects that I work on is determined by the client (which is usually
about what's currently popular rather than any intrinsic goodness).

Next, rather than picking one GPPL as my favorite, I'd much rather suggest
that spending the time to learn a lot of different languages is A Really
Good Thing(tm).  Each GPPL picks a different set of tradeoffs and so,
depending on the problems you're most concerned about, different GPPLs fit
better (or worse :-).


> [snip]
>> The mainstream (of the self-styled programming avant garde, anyways :-)
>> is finally starting to play around in this direction.  To wit, look at
>> all of the work on pattern languages and domain specific languages.
>> Look at all of the sudden, "revolutionary" interest in code generation
>> and reflection-based code manipulation.  Look at the press that folks
>> like Gosling got for working on a toolset based upon manipulating
>> abstract representations of programs.  Etc.

> 1963 Lisp macros revisisted ;) ?

Indeed, there's certainly a school of thought that hygienic macros are a
necessary part of any good GPPL.

As an aside back to the parent thread, I hope it's obvious that the
argument against tree grammars was blown out of the water with those
old-school Lisp macros lo those many years ago.  :-)


>> Heck, look at the growing buzz over the "Language Oriented Programming"
>> pitch by the founder of JetBrains (the IntelliJ IDE company).

> This all (LOP) looks nice at first glance but there are big problems
> sitting in there. First of the being the fast that definig a DSL is not
> that easy task -- doing it right requires above average competence. The
> author slides easily over that (fig. 2 lacks one important thing long
> ------> for creating proper DSL).

Yeah but that's partly because people don't have much experience in
explicitly, consciously creating complete languages.  I.e., nearly all of
the training for a programmer is in creating ad hoc languages more or less
implicitly as a by product of writing code in a GPPL.

Ousterhout (creator of e.g., Tcl), among others, has argued that people
shouldn't necessarily create DSL's from scratch but rather modify little
languages (such as Tcl) to, in essence, create the DSL language.  Tcl
actually makes it pretty easy to create special purpose and safe
sub-interpreters.

Have fun,
	John


 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/antlr-interest/

<*> To unsubscribe from this group, send an email to:
    antlr-interest-unsubscribe at yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 





More information about the antlr-interest mailing list