dalamb@qucis.queensu.ca (David Lamb) (07/05/89)
Can anyone point me to references in the open literature that supplies evidence one way or the other on the following question: I've heard people claim that "structure editors" that provide only editing operations corresponding to creating portions of an abstract syntax tree are inferior in user-friendliness to "text editors" that let people type the way they're used to, especially if the "text editor" provides operations that let you fill in boilerplate when you choose to do so. Is there any evidence, other than anecdotal, one way or the other on this question? I'm hoping to invest some of my research assistants' time this year in extending my batch-style compilation tools to assist in building interactive compiler-like programs, so would like to decide which approach to take fairly soon. David Alex Lamb Department of Computing and Information Science Queen's University Kingston, Ontario, Canada K7L 3N6 (613) 545-6067 ARPA Internet: David.Lamb@cs.cmu.edu dalamb@qucis.queensu.ca uucp: ...!utzoo!utcsri!qucis!dalamb [This used to be quite a hot topic of debate. Personally, I tend toward the text approach, see "Z - the 95% program editor," by Steve Wood in the proceedings of an ACM text processing conference about 1981. The arguments in favor of the structure editors is that the editor always knows what's going on, the program being edited is always syntactically correct except for leaf nodes that haven't been filled in yet. The argument in favor of the text approach is that there are a lot of operations that are easy to do as text editing but hard as structure editing, e.g. changing (a-b)-c to a-(b-c), and the cost of parsing on demand is low enough not to be a problem. I've seen plenty of papers describing various kinds of editors, but none trying to compare them. Has anyone else? -John] -- Send compilers articles to compilers@ima.isc.com or, perhaps, Levine@YALE.EDU Plausible paths are { decvax | harvard | yale | bbn}!ima Please send responses to the originator of the message -- I cannot forward mail accidentally sent back to compilers. Meta-mail to ima!compilers-request
brad@looking.on.ca (Brad Templeton) (07/05/89)
I wrote the only structure editor to make a major venture in the commercial market (Alice Pascal) and from that I learned a couple of things: a) You have to mix structure and text. An incremental parser for expressions is not too bad on the implementation side, and does most of the basic problems. b) A few simple transmog operators for the larger structures can do the rest. c) True incremental parsing is usually slow unless you really work on it. Not ok for the PC style machines found in many labs. d) Don't try a structure editor to the mass market. Stick to your niche. --- Brad Templeton, Looking Glass Software Ltd. -- Waterloo, Ontario 519/884-7473 [I looked at Alice Pascal when it came out, and although it did what it did very well, somehow its improvements over conventional development editors were never compelling enough to make me want to switch. Oh, well. -John] -- Send compilers articles to compilers@ima.isc.com or, perhaps, Levine@YALE.EDU Plausible paths are { decvax | harvard | yale | bbn}!ima Please send responses to the originator of the message -- I cannot forward mail accidentally sent back to compilers. Meta-mail to ima!compilers-request
skoenig@a.gp.cs.cmu.edu (Sven Koenig) (11/12/90)
I am trying to survey completed and on-going projects for building programming language source text editors (structure editors), both of the template approach variety (like Gandalf or the Cornell Program Synthesizer) and of the recognizer approach variety (i.e. based on incremental syntax analysis), and integrating them in a programming environment. At the same time I am trying to get an overview over methods for doing incremental syntax analysis and incremental semantic analysis. I would like to get an as complete overview as possible. Any pointers to the literature (in English or German) are greatly appreciated. Thanks, Sven (skoenig@cs.cmu.edu) -- Send compilers articles to compilers@iecc.cambridge.ma.us or {ima | spdcc | world}!esegue!compilers. Meta-mail to compilers-request.
G.Moretti@massey.ac.nz (Giovanni Moretti) (11/14/90)
Sven My masters thesis was on the implementation of a syntax directed editor that would parse an Extended BNF definition of a language and thereafter act as a template-oriented structure editor for the language. It worked quite well with syntaxes for Pascal, LISP, SNOBOL and a hardware description language being used as examples. The thesis was entitled: "GED - A Generalised Syntax Editor" by G.S.Moretti, Massey University, Palmerston North, New Zealand, 1984. The syntax was extended to allow the embedding of prettyprinting commands. I'm unfamiliar with the procedure for getting hold of a copy of the thesis. As far as I know, its the sort of thing that libraries have special arrangements for :-). Cheers Giovanni -- Giovanni Moretti, Consultant | G.Moretti@massey.ac.nz, Pkt-ZL2BOI@ZL2BFJ Computer Centre, Massey University| Ph 64 63 69099 x8398, FAX 64 63 505607 Palmerston North, New Zealand | -- Send compilers articles to compilers@iecc.cambridge.ma.us or {ima | spdcc | world}!esegue!compilers. Meta-mail to compilers-request.