Path: utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!quintus!pds
From: pds@quintus.UUCP (Peter Schachte)
Newsgroups: comp.lang.lisp
Subject: Re: lisp environments (Structure vs. text editors)
Message-ID: <466@cresswell.quintus.UUCP>
Date: 14 Dec 87 20:35:34 GMT
References: <487@PT.CS.CMU.EDU> <460@cresswell.quintus.UUCP> <499@PT.CS.CMU.EDU>
Organization: Quintus Computer Systems, Mountain View, CA
Lines: 51

<< I tried to post this to comp.editors, but my news system didn't want to >>

In article <499@PT.CS.CMU.EDU>, ralphw@IUS2.CS.CMU.EDU (Ralph Hyre) writes:
> In article <460@cresswell.quintus.UUCP> pds@quintus.UUCP (Peter Schachte) writes:
> >Text editors CANNOT simulate structure editors.  They can do a rather
> >feeble job of it.  Text editors fall down when context information is
> >needed in order to decide what to do...
> 
> I disagree - a PROGRAMMABLE text editor can do anything you want.  This is
> because it's programmable.  Whether you're happy with the performance or a
> particular implementation is a separate, but important issue.

When performance gets bad enough, it BECOMES the central issue.  If Emacs
spends several seconds determining context for EACH KEYSTROKE, it
becomes unusable.
> 
> >...For example:  a structure editor can supply different commands, different
> >facilities, for editing comments and code.
> Seems like there's the potential here for moby modefulness.  I can't see
> why I would want different commands when I edit code compared with comments.

Don't you switch Emacs to text mode to edit block comments?  Line wrap
is so useful there.  Better yet, why not have the paragraphs
auto-filled and auto justified while you type, like a word processor?
Make your comments look nice.  Use boldface, italics, large headings,
etc.  Why not?  Just because your tools won't let you?

> ... it's just a matter of
> whether you want to have a fixed view of editing or a completely
> open (and programmable) one.

No, it's a matter of what information you want available to your
programs.  There's nothing to say that a structure editor can't be
programmable.  A programmable text editor has access to the text of a
program or document, and must parse it in order to determine context.
A structure editor has access to the structure of program or document,
and must unparse (print) it in order to keep the screen up-to-date.
Printing is usually easier than parsing.
> 
> [disclaimer: I've never used a 'structure editor' except for the MacPascal
> editor, it kept getting in the way.  I have used some EMACS packages (like
> Scheme mode) which meet my needs without taking away functionality.]

Sometime, try SEdit, the new Interlisp structure editor.  It still has
some weaknesses, but you might be surprised at how much it can look
like a text editor, and how much advantage it takes of having the
structure around.  You might be pleasantly surprised.
-- 
-Peter Schachte
pds@quintus.uucp
...!sun!quintus!pds