Re: Looking for volunteers for XL

Kaz Kylheku <kaz@kylheku.com>
Mon, 28 Nov 2011 04:45:11 +0000 (UTC)

          From comp.compilers

Related articles
Looking for volunteers for XL christophe@taodyne.com (Christophe de Dinechin) (2011-11-22)
Re: Looking for volunteers for XL kaz@kylheku.com (Kaz Kylheku) (2011-11-26)
Re: Looking for volunteers for XL christophe@taodyne.com (Christophe de Dinechin) (2011-11-26)
Re: Looking for volunteers for XL bc@freeuk.com (BartC) (2011-11-26)
Re: Looking for volunteers for XL christophe@taodyne.com (Christophe de Dinechin) (2011-11-27)
Re: Looking for volunteers for XL bc@freeuk.com (BartC) (2011-11-27)
Re: Looking for volunteers for XL kaz@kylheku.com (Kaz Kylheku) (2011-11-28)
Re: Looking for volunteers for XL tdk@thelbane.com (Timothy Knox) (2011-11-27)
Re: Looking for volunteers for XL bc@freeuk.com (BartC) (2011-11-28)
Re: Looking for volunteers for XL gah@ugcs.caltech.edu (glen herrmannsfeldt) (2011-11-28)
Re: Looking for volunteers for XL christophe@taodyne.com (Christophe de Dinechin) (2011-11-28)
Re: Looking for volunteers for XL gah@ugcs.caltech.edu (glen herrmannsfeldt) (2011-11-29)
Re: Looking for volunteers for XL jussi.santti@ard.fi (ardjussi) (2011-11-30)
[10 later articles]
| List of all articles for this month |

From: Kaz Kylheku <kaz@kylheku.com>
Newsgroups: comp.compilers
Date: Mon, 28 Nov 2011 04:45:11 +0000 (UTC)
Organization: A noiseless patient Spider
References: 11-11-048 11-11-053 11-11-054
Keywords: design, comment
Posted-Date: 28 Nov 2011 00:11:10 EST

On 2011-11-26, BartC <bc@freeuk.com> wrote:
> "Christophe de Dinechin" <christophe@taodyne.com> wrote in message
>>> [There were a bazillion extensible languages in the 1970s, many quite
>>> sophisticated. They all disappeared without a trace, largely because
>>> the ability to do per-program extensions meant that every program was
>>> written in a different language, making them all unreadable. ...
>
>> [I wrote actual programs in IMP-72. The compiler was slow, but not
>> unduly so for the time, and it was in the same ballpark as BLISS-11
>> which got a lot of use. (They both cross-compiled on a PDP-10.) We
>> gave up on it because we didn't want to try to remember which of six
>> slightly different case statements each program used. -John]
>
> Extensible languages have to be used with some care I think. Those
> features aren't for everyday use.


Actually, perhaps surprisingly, language extensibility features are for
everyday use.


> They should be used to turn a language X into a new language X2. X2
> should be properly designed, implemented, and documented. Then
> development should be halted.


This is worth doing for language extensions that are significant, and
of interest to a wider community of people. But it's a time-consuming
process.


Extensibility in the language allows such a thing to be conducted as a
project which regularly releases code (rather than just paper).


It also allows some fraction of any application to consist of some
extensions to give it a little domain-specific language or whatever.


> However, if the design of X2 isn't going to change, you might as well
> just write a compiler directly for X2; it's not necessary to make
> available, to the programmer of X2, all those untidy language-building
> features (for an example, see C++).


The problem with this idea is that X2 is not a completely new
language, but X with some extensions. Those extensions can be used in
parallel with other extensions to X.


You're trying to fit extensible languages into the traditional model,
in which a lone guru (or small group of such) working atop a mountain
carves a programming language onto stone tablets, which then descend
down to the masses.


Under an extensible language culture, the lone guru working in
isolation produces not a new language, but some new extension. These
can be released as code for people to try. Then when the bug reports
pour in and it's all hammered out, a formal spec can be written. The
guru deosn't get to ask everyone to ditch their language, only to add
something to it.


[Are you aware of anyone actually doing this? I agree that you might
expect extensible languages to be handy design testbeds, but somehow
other than in the Lisp community, it didn't work out that way. -John]


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.