Subject: Re: returning from a function (Ex: Re: some small proposed changes to standard)
From: rpw3@rigden.engr.sgi.com (Rob Warnock)
Date: 1999/07/27
Newsgroups: comp.lang.lisp
Message-ID: <7nk6hm$6o6nh@fido.engr.sgi.com>
Tim Bradshaw  <tfb@tfeb.org> wrote:
+---------------
| rpw3@rigden.engr.sgi.com (Rob Warnock) writes:
| >   While it is certainly possible to create an editor that guarantees
| >   that an initially valid SGML document remains valid after every
| >   subsequent allowed editing step, Godel's Proof suggests that there
| >   will always be some valid SGML documents which it is impossible
| >   to create using such an editor.
| 
| I think this is almost certainly false.  Really the question is `given
| a finite number of allowed transformations between legal strings of
| some grammar G, can you start with some string A of that grammar and
| get to any string B'.  I need to be more clear about what I mean by
| `allowed transformations', but I'll avoid that.  I think that for SGML
| grammars that this is likely to be true.
+---------------

Unfortunately, `allowed transformations' *is* the issue, at least where
humans & editors are concerned. The point is *not* proving the validity
of an a priori given text, but starting with *nothing* (well, the SGML
grammar's "start" symbol) and writing something "useful" (whatever you
as a human consider a "useful" end-product to be) given only the `allowed
transformations' in a strict validating editor.

Think of it this way: Suppose you were asked to write a *huge* Lisp
program, but one of the rules was that you had to use an editor
that *forced* your program to be "legal Lisp" (including "validly"
compiling) after every single keystroke.  E.g., imagine using Emacs
and putting a hook in the keyboard input processing that ran the
Lisp compiler after every keystroke[*] and if the compiler barfed
it would *undo* the keystroke!  Do you actually think you could
do that?  [I don't think *I* could!]


-Rob

[*] O.k., to make it easier we'll even allow "fat" keys and macros to
count as "one" keystroke. And maybe even allow a whole Lisp symbol...

-----
Rob Warnock, 8L-855		rpw3@sgi.com
Applied Networking		http://reality.sgi.com/rpw3/
Silicon Graphics, Inc.		Phone: 650-933-1673
1600 Amphitheatre Pkwy.		FAX: 650-933-0511
Mountain View, CA  94043	PP-ASEL-IA