Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!gegeweb.42!gegeweb.eu!nntpfeed.proxad.net!proxad.net!feeder1-1.proxad.net!198.186.194.250.MISMATCH!news-out.readnews.com!news-xxxfer.readnews.com!news.misty.com!news.iecc.com!nerds-end From: "BartC" Newsgroups: comp.compilers Subject: Re: Looking for volunteers for XL Date: Sat, 26 Nov 2011 23:19:29 -0000 Organization: A noiseless patient Spider Lines: 31 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <11-11-054@comp.compilers> References: <11-11-048@comp.compilers> <11-11-053@comp.compilers> NNTP-Posting-Host: news.iecc.com X-Trace: leila.iecc.com 1322378707 6611 64.57.183.58 (27 Nov 2011 07:25:07 GMT) X-Complaints-To: abuse@iecc.com NNTP-Posting-Date: Sun, 27 Nov 2011 07:25:07 +0000 (UTC) Keywords: history, design Posted-Date: 27 Nov 2011 02:25:07 EST X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: x330-a1.tempe.blueboxinc.net comp.compilers:356 "Christophe de Dinechin" 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. 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. (And there should either have been one kind of case statement, or all six case statements should have been distinct.) For this kind of purpose, an extensible language might work well. 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++). -- Bartc