home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / bsd_srcs / usr.bin / lisp / lispnews / text0082.txt < prev    next >
Encoding:
Text File  |  1985-11-10  |  5.5 KB  |  137 lines

  1.  
  2. Here are the responses that I received to my question "What's out
  3. there for emacs?"  
  4.  
  5.  
  6. ------- Forwarded Messages
  7.  
  8. Received: From SU-SCORE by RAND-UNIX at Mon Jan 24 23:41:37 1983
  9. Date: Mon 24 Jan 83 22:43:01-PST
  10. From: Jay Lark <CSD.LARK@SU-SCORE.ARPA>
  11. Subject: Re: emacs interface to franz?
  12. To: mike@RAND-UNIX.ARPA
  13. In-Reply-To: Your message of Mon 24 Jan 83 18:49:21-PST
  14.  
  15. I'm sure you've probably received several messages similar to this one,
  16. but just in case...
  17.  
  18. There exists the capability in Unix Emacs to run a process in its own
  19. buffer.  Typein can be directed to the process, and output is just sent
  20. right to the buffer.  This is an excellent way of running Lisp, because 
  21. you get all of the nice Emacs features (paren balancing, local sexpr
  22. editing) at essentially no cost.  I have been largely unsuccessful with
  23. trying to run Emacs under Lisp.
  24.  
  25. The process package is part of the standard Unix Emacs distribution.
  26.  
  27. Jay Lark
  28. -------
  29.  
  30.  
  31. ------- Message 2
  32.  
  33. Received: From UTAH-CS by RAND-UNIX at Tue Jan 25 07:01:36 1983
  34. Date: 25 Jan 1983 7:20-MST
  35. From: Russ Fish <utah-gr!fish@UTAH-CS> (host 10.0.0.4)
  36. Subject: Re: emacs interface to franz?
  37. To: mike@RAND-UNIX
  38. Cc: utah-gr!galway@UTAH-CS
  39. In-Reply-To: mike's message of Monday, 24 Jan 1983 15:34-PST
  40.  
  41. We have been running our PSL (Portable Standard Lisp) in gemacs
  42. (Gosling's emacs) windows for some time.  I suspect it would be a minor
  43. hack to convert it to Franz, but haven't done it and am not a Franz
  44. user.  I could mail you our .ml code if you wanted to undertake
  45. converting it to Franz (or just using it for inspiration and hacking
  46. your own) and distributing it to Franz folks.
  47.  
  48. It works like this:  The lisp process is associated with a gemacs
  49. buffer/window.  In that window you can carry on a normal line-by-line
  50. conversation, if you wish.  <CR> sends the current line, (back to mark,
  51. which is left after the prompt) into the lisp.  We mostly use the PSL
  52. in Rlisp syntax, which is algol-like, but this part of the code is just
  53. a wrapping for the new-shell function in process.ml with appropriate
  54. editting syntax set, so you could do the same with no work for any
  55. Lisp.
  56.  
  57. You can send an expression, fn def, etc. from any other lisp-mode
  58. window with a single keypress.  Echoing as input in the dialog window
  59. is inhibited if a prefix arg is provided, so you don't have to look at
  60. long exprs or fn defs again, just the lisp response.  
  61.  
  62. Sending multiple line exprs in response to a single prompt depends on
  63. the fact that PSL numbers the prompts for history, like the c-shell.  A
  64. gemacs mlisp output filter process monitors the output for toploop
  65. prompts and feeds another line of input if the same prompt number comes
  66. back, instead of printing the prompt.
  67.  
  68. The result is pretty classy.  You get the full many-window gemacs
  69. editing environment with tags, etc. for random-access navigation and
  70. just send chunks of code as you change them.  The extreme of usage is
  71. "menu" like windows which contain debugging code in clusters rather
  72. than sequences.  You select exprs with the cursor and send them in any
  73. order.
  74.  
  75. We also provide key fns for the common case of sending single lines to
  76. the toploop or single-character commands to the break-loop without
  77. editting them into a buffer.
  78.  
  79. Best respond directly to me, since I am not on Franz-Friends.
  80.  
  81. -Russ Fish  (Fish@Utah-20, utah-cs!fish)
  82.  
  83.  
  84.  
  85. ------- Message 3
  86.  
  87. Received: From UDEL-RELAY by RAND-UNIX at Tue Jan 25 18:18:55 1983
  88. Return-Path: <israel.umcp-cs@UDel-Relay>
  89. Date:     25 Jan 83 15:13:51 EST  (Tue)
  90. From: Bruce Israel <israel.umcp-cs@UDel-Relay>
  91. Subject:  Re:  emacs interface to franz?
  92. To: mike@RAND-UNIX
  93. In-Reply-To: Message of Monday, 24 Jan 1983 15:34-PST from mike@RAND-UNIX
  94.         <8300250008.58@UCBVAX.BERKELEY.ARPA>
  95. Via:  UMCP-CS; 25 Jan 83 20:45-EST
  96.  
  97. We have a few franz<->emacs interfaces, but I'm not sure what you mean.
  98. One is the process.ml package that comes with gosling's emacs (the emacs
  99. that I assume you are talking about).  With this package, you can run
  100. franz inside a window from within emacs and have the facilities of an
  101. editor along with lisp.  The other thing we have is a local Franz
  102. package called the load1 package.  This package was written for
  103. compiling flavors (like in the lisp machine; another local package)
  104. and has a function called vi.  (vi 'lisp-function) will call the
  105. editor (from the environment variable VISUAL, /usr/ucb/vi is default) on the
  106. file which contains the definition of the lisp function, positioning
  107. the editor at the point in the file where the function is defined.  Upon
  108. exiting the editor, it asks you if you want to reload the modified file.
  109. To edit a function from a file this way, the file must have been load1'ed
  110. previously so that the info on where the function is stored and what type
  111. it is will have been saved.  Load1 will distinguish between different
  112. types of functions, ie. defflavors, defmethods, defmacros, defuns etc.
  113. and will search for the correct definition in the file.  Is this what
  114. you mean?  If you like I can send you the four or five files necessary.
  115. - Bruce
  116.  
  117.  
  118. ------- Message 4
  119.  
  120. Received: From CMU-CS-VLSI by RAND-UNIX at Thu Jan 27 06:53:41 1983
  121. Date: 27 Jan 1983 09:44-EST
  122. From: Carl.Ebeling@CMU-CS-VLSI
  123. Subject: Re: emacs interface to franz?
  124. To: mike@RAND-UNIX
  125. Message-Id: <412526661/ce@CMU-CS-VLSI>
  126. In-Reply-To: mike@RAND-UNIX's bboard message of 27-Jan-83 04:14    
  127.  
  128. I have an electric lisp package and process package for emacs.  It
  129. includes 'zap-function-to-lisp' among other things.  It is for
  130. Gosling's emacs and uses the subprocess facility.  I can mail them to
  131. you if you like.
  132.     Carl
  133.  
  134.  
  135. ------- End of Forwarded Messages
  136.  
  137.