survey of query for syntax directed editors

Frans Meulenbroeks meulenbr at cstw01.prl.philips.nl
Thu Aug 10 19:22:21 AEST 1989


Oops. I noticed that I forgot a few messages in my survey.
Here they are.

Frans Meulenbroeks        (meulenbr at cst.prl.philips.nl)
	Centre for Software Technology
	( or try: ...!mcvax!phigate!prle!cst!meulenbr)

-------------------------------------

>From hp4nl!hp4nl.nluug.nl!cs.nott.ac.uk!al at phigate Fri Aug  4 08:13:01 1989

Hi!

John Wilson and I wrote a syntax-directed editor (PED) in the late 1970's
and early 1980's.  A few details have been added and improved since then, but
basically it's been collecting dust.  It runs under UNIX and is language-
independent -- each language you use it for needs abstract and concrete (or
combined) syntax specifications.  So far it has such specifications for Pascal,
C, Modula-2, Ada, and Algol 68 (without formats).  The Pascal specification
is the only really polished one, though.  Improving the specification has a
great impact on the use of the editor.

I am using PED as a test-bed for other ideas, but we have no plans to release
it as we haven't the manpower to polish it up and to fill in all the missing
areas (no code generation!).  In any case there are better examples around now.

PED is a pure synthesising editor;  although there's a parser for Pascal
programs, there is no incremental parsing in PED.  More modern syntax-directed
editors allow either text input or structure specification at any stage.
In structure mode, errors are prevented;  in text mode, they are immediately
detected.  See, for example, "The PSG System:  From Formal Language Definitions
To Interactive Programming Environments" by Rolf Bahlke and Gregor Snelting
(Technical University of Darmstadt) in ACM Transactions on Programming
Languages and Systems, Vol 8, No 4, October 1986, pp. 547-576.

I wouldn't recommend using a pure synthesising editor for C.  With Pascal, the
long names used as syntactic signposts (e.g. "procedure", "begin") make pure
synthesis likely to save keystrokes;  not so in C.  Also, in Pascal, the rigid
outer syntax forces a top-down expansion that the syntax-directed editor can
lead;  in C, there is so much choice at the top level that the editor cannot
provide a visible skeleton framework for the program expansion.  I think this
effect arises when the syntax is less constraining generally -- you wouldn't
find syntax-directed editors very helpful in assembly-language programming.

I expect you know about the work at Carnegie Mellon and at Cornell.

Good luck with your enquiry,
			    Anne Lomax.

------------------------------------------------------------------------------
Dr Anne Lomax			    |		JANET:  al at uk.ac.nott.cs
Computer Science Department	    |		ARPA:	al%nott.cs at ucl-cs.arpa
University of Nottingham, U.K.	    |		UUCP:	mcvax!ukc!nott.cs!al
------------------------------------------------------------------------------

------------------------------------

>From hp4nl!hp4nl.nluug.nl!cs.glasgow.ac.uk!jack at phigate Fri Aug  4 13:16:21 1989

There is a thing called "Leif" which is a syntax-directed editor generator
that outputs macro packages for Gnu Emacs.  It's in the comp.sources.unix
archives somewhere.

best wishes - jack


-- 
Jack Campin  *  Computing Science Department, Glasgow University, 17 Lilybank
Gardens, Glasgow G12 8QQ, SCOTLAND.    041 339 8855 x6045 wk  041 556 1878 ho
INTERNET: jack%cs.glasgow.ac.uk at nsfnet-relay.ac.uk  USENET: jack at glasgow.uucp
JANET: jack at uk.ac.glasgow.cs     PLINGnet: ...mcvax!ukc!cs.glasgow.ac.uk!jack

Frans Meulenbroeks        (meulenbr at cst.prl.philips.nl)
	Centre for Software Technology
	( or try: ...!mcvax!phigate!prle!cst!meulenbr)



More information about the Comp.lang.c mailing list