[comp.sys.xerox] Please add me to you mailing list

welch@CIS.OHIO-STATE.EDU (Arun Welch) (06/30/89)

Date: Fri, 30 Jun 89 10:48:17 EDT
From: "Tihamer T. Toth-Fejel" <ttf@vax3.iti.org>
To: info-1100-request@cis.ohio-state.edu
Subject: Please add me to you mailing list
Cc: ttf@vax3.iti.org

I'm finally back on a Xerox!
After a year-long stint on Explorers, on which
I did my damnest to make it look like Medley.
In addition, I wrote something I called Autobind,
which was an improvement of what Jay Ferguson
(formerly at Stanford, Ford Aerospace, and CRL -now at Xerox Hdqrs)
wrote for D-Edit and called Deditbind.
Autobind does a number of things to the 
ZMACS (line-oriented yech lisp editor):

- Takes a selected loop, function call, let or 
     mutiple-value-bind and correctly binds the variables
     (A GREAT timesaver) for faster test-as-you go editing.
    Reads the currently selected region, and:
    If the selected expression is a loop, then it cranks through 
      the first iteration.
      eg. in (loop for thing in '(z b c d) collect thing), 
      thing gets bound to z, and super I lets you bind thing to
      iib,c,...
      eg. in (loop for thing from 0 to 10 collect thing), 
      thing gets bound to 0 etc.
    If the expression is a let, let*, or multiple-value-bind 
     then it binds all the local variables
      eg. in (let ((z 10)(b 'tree) c) (list 'goblygook)), 
      z gets bound to 10, b to tree, c to nil.
      eg. in (multiple-value-bind (xlim ylim) 
           (send *terminal-io* :inside-size) (list 'goblygook)),
        xlim gets set to the 1st value returned by 
       (send *terminal-io* :inside-size), ylim to the 2nd
    If the selected expression is a list of length two, 
      with the first a symbol (as in the individual
      variable assignments in a let expression, 
      the first gets setq'ed to the evaluation of the second.
    If the selected expression is an atom, that atom gets set to nil.
    The loop bindings were originally inspired by Jay 
      Ferguson's DeditBind enhancement
      to the Xerox DEdit while both of us 
      were at Ford Aerospace.  When debugging
      loops, he got tired of typing 
      (setq var (car list-to-itterate-over...)).  
       And so did I. 

Has anyone done anything like this for S-Edit?
I don't want to reinvent someone else's work.

Also, you know when you eval something in S-Edit and if the
result is a list then you have to choose whether you want to
inspect it or display-edit it.  I'd like to add another
item to the menu - Prettyprint to promptwindow.  Has anyone
done it?  Or have any ideas on how to do it?