Related articles |
---|
[4 earlier articles] |
Re: History of code completion lhp+news@toft-hp.dk (2001-10-23) |
Re: History of code completion gzw@home.com (Geoff Wozniak) (2001-10-27) |
Re: History of code completion marcov@toad.stack.nl (Marco van de Voort) (2001-11-05) |
Re: History of code completion genew@mail.ocis.net (2001-11-08) |
Re: History of code completion binary@eton.powernet.co.uk (Richard Heathfield) (2001-11-08) |
Re: History of code completion lex@cc.gatech.edu (Lex Spoon) (2001-11-08) |
Re: History of code completion neelk@alum.mit.edu (2001-11-11) |
Re: History of code completion rbates@southwind.net (Rodney M. Bates) (2001-11-11) |
Re: History of code completion joachim_d@gmx.de (Joachim Durchholz) (2001-11-14) |
From: | neelk@alum.mit.edu (Neelakantan Krishnaswami) |
Newsgroups: | comp.compilers,comp.programming |
Date: | 11 Nov 2001 23:17:05 -0500 |
Organization: | Compilers Central |
References: | 01-10-091 01-10-112 01-11-043 01-11-066 |
Keywords: | editor, history |
Posted-Date: | 11 Nov 2001 23:17:05 EST |
On 8 Nov 2001 23:21:44 -0500, Lex Spoon <lex@cc.gatech.edu> wrote:
>genew@mail.ocis.net (Gene Wirchenko) writes:
>> I can do it myself. ...
>> It depends on the language, but I expect theoretical limitations
>> bite often. Compiler preprocessors probably raise much havoc with
>> such editors.
>
> Good point -- C is hard to support in a system like this, in the
> fully general case. Then again, I'm sure there is a large subset of
> preprocessor usage that *could* be supported, if only people
> bothered.
Lisp systems are pretty good about tracking macros and macro
expansions, so I don't think that it's an insurmountable problem.
About the only major annoyance is that teaching Emacs to indent new
macro-created syntax is a PITA. The <bigwig> language has an
interesting solution to this gripe: they specify indentation hints
(via special comments) as part of the macro definition, so that
editors and pretty-printers can correctly format macros.
http://www.brics.dk/bigwig
Neel
[C macros are hard because you can (and people do) mess around with
statement and expression bracketing. In one infamous case, Steve
Bourne originally wrote the Bourne shell with a bunch of macros to
make C look just like Algol68, with definitions like THEN mapping to
") {" which is perfectly valid but kind of hard to teach to a syntax
editor. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.