home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / unix / scheme_1 / !RelNotes < prev    next >
Text File  |  1994-08-03  |  7KB  |  197 lines

  1. GNU Scheme 4e1
  2. --------------
  3. This is the (fourth?) release of the GNU scheme interpreter.
  4. As ever read the provided documentation carefully ;-)
  5.  
  6. Things to note :
  7. if you keep you scheme source in !Scm.scm then
  8.     (load "<scm$dir>.foo")
  9.  
  10. will load !Scm.scm.foo - as you might expect.
  11.  
  12. Source is available from :
  13.     altdorf.ai.mit.edu
  14.     /pub/jaffer
  15.     /pub/scm
  16. (depending on how they are feeling :)
  17. and it'll no doubt eventually arrive at 
  18.     ftp.cs.indiana.edu
  19.     /pub/scheme-repository
  20. [note this is the new home of the scheme repository]
  21. [note2 - the archimedes extension routines aren't yet in the source package,
  22.  if you desperately want to see how then email me ;)
  23. ]
  24.  
  25.  
  26. Running SCM
  27. -----------
  28. Three ways depending on how you like it :
  29.     o double click on the icon
  30.     o an alias 'scm' is setup to use
  31.     o an alias 'taskscm' runs scm in a taskwindow; however the first 
  32.       of the three ways is preferred as it enables the graphics 
  33.       routines to work - if you run in a taskwindow then they tend 
  34.       not to...(unfortunately)
  35.       (You'll need OS3 for the taskwindow alias to work of course)
  36.  
  37. It _might_ be nice if everything ran in a window; but having seen EdScheme
  38. doing this the speed really is depressing - I think that having it run under
  39. the WIMP with windows etc would add to the code something chronic and also
  40. make the performance suffer when doing graphics (mind you, configurable time
  41. slices might sort it)....opinions anyone?
  42.  
  43.  
  44.  
  45. Large Announcement
  46. ------------------
  47. Due to some diligent interference with the source we now have some really 
  48. fun primitives to play with - at last you can have graphics!
  49. See the docs in !ArcExtns, please note that its still in a somewhat wild 
  50. state due to the fact I wanted to have something for folks to play with 
  51. uploaded before I trundle off home at the end of term - I only ever check 
  52. my mail every week at best thereafter, so expect the odd update to happen; 
  53. particularly some demo code of using the new graphics routines 
  54. (they do work - honest ;-) as well as turtle graphics written using them
  55. (this should take an afternoon to hack up I'm guessing...)
  56.  
  57. This should significantly improve the fun factor of Scheme for the masses.
  58. I would be EXTREMELY grateful to hear of any bugs present in the new routines
  59. - I'll fix anything thats probably brain damaged.
  60. SCM should load the new routines as I've set it up - the source is VERY self
  61. explanatory (the scheme support routines) - the C interface is not yet 
  62. available as I'm not quite done fiddling it yet.
  63. (Few more routines to add..)
  64.  
  65. I'll include any nice graphics routines that anyone writes with full credit.
  66. (so get doodling)
  67.  
  68.  
  69.  
  70. Features
  71. --------
  72. As ever don't remove the alarm-interrupt handler at the end of !Scm.Init and 
  73. then call
  74.               (alarm <n>) 
  75. because you'll get a stack backtrace. You've been warned :-)
  76.  
  77.  
  78. Other than that it seems to suffice as the fastest LISPy type language I've 
  79. found on the Arc... (I have a couple of other Schemes kicking about  - 
  80. mostly in a state of disarray... email me if you want to fiddle with them - 
  81. VSCM I may or may not get working - its got a weird feature last I was 
  82. hacking it about...)
  83. Oh - and this is the only one with graphics and which is capable of
  84. supporting large applications (see JACAL).
  85.  
  86.  
  87.  
  88. Bonuses
  89. -------
  90. Small items that are included in this little bundle that you wouldn't
  91. otherwise get :
  92.       !Scm.scm.macros
  93.       !Scm.scm.arc_ext
  94.       !Scm.scm.arc_demos
  95.  
  96. Taking each in turn we have :
  97.  
  98.     o a miniscule demonstration of how to do macros. Nobody actually 
  99.       asked but I was interested as it's the only bit I hadn't figured
  100.       out how to do in SCM. Suck 'em and see.
  101.  
  102.     o the support code for the archi graphics routines - feel free to add
  103.       to this - I'll include _anything_ useful with credit.
  104.  
  105.     o the demonstration code using the new primitives provided. Again
  106.       I'll include _anything_ useful with credit.
  107.  
  108.  
  109.  
  110. Other toys for GNU Scheme
  111. -------------------------
  112. There should be the Symbolic Algebra package JACAL available for use with
  113. GNU Scheme at the same place you got this from - if not email me and I'll
  114. send you it bundled up ready to go for the arc.
  115. (It actually installs moderately painlessly once you've fiddled the paths
  116. and a few redundant defines out)
  117.  
  118. WB - database package. Haven't tried. Needs Hobbit?
  119.  
  120. Hobbit - Scheme->C compiler. May look at this soonish once I get graphics
  121. finished or once GCC 2.5.8 comes out for RiscOS - until then it would
  122. slow it down to compile it with GCC (pity..).
  123.  
  124. XSCM - interface to X - errm you are joking aren't you?
  125. Actually if someone could come up with a port of this it would be really 
  126. really spiffy and make writing desktop apps a doddle; the only problem is
  127. that it's horribly non-trivial. (could do Tcl/Tk instead?)
  128.  
  129. SLIB - I've included the major bits of the package that I thought were
  130. useable on the arch - the docs aren't included for space - see FTP sites
  131. given above (if someone would fix that 77 file per directory 'feature' then
  132. we would have been able to fit all of SLIB in...).
  133.  
  134. (the list goes on and on....see the FAQs)
  135.  
  136.  
  137.  
  138. BUGS
  139. ----
  140. One slightly annoying one - 
  141. If you fiddle the !Boot file to pass arguments to the alias `scm', then it
  142. doesn't load the file most of the time due to erroneous expansion of 
  143. aliases of paths; even if you don't it tends to do this.
  144. Slightly irksome but easily worked around - the `load' primitive copes
  145. with anything thrown at it generally, including paths / aliases and if you
  146. need something loaded at each invocation then add it into your ScmInit.
  147.  
  148. Second one :
  149. If you load a file and it is syntactically invalid (aherm) - for that read -
  150. you botched up and put in one too many / few parentheses :
  151. SCM complains and then if you go back and edit it and try to save it you get
  152. a file open error. This is because SCM doesn't shut open files - simply
  153. do a (system "shut") or alternatively similar from your favourite editor
  154. (!shut in vi does the trick).
  155.  
  156.  
  157.  
  158. Bug reports / comments / notice of anyone actually using it to :
  159.  
  160.     ams@uk.ac.abdn.csd        ;;; available til summer '95
  161.  
  162.  
  163.  
  164. snailmail
  165. (I'm ever optimistic someone might send me something novel / a postcard) :
  166.  
  167. kintail,
  168. barclay park,
  169. aboyne,
  170. aberdeenshire.
  171. ab34 5jf.
  172.  
  173.  
  174. happy scheming,
  175.  
  176. al slater.
  177. 13/6/94
  178.  
  179. (
  180. PPS : if you want to be really tight and nasty then you can easily throw
  181.  out all of !Scm.slib if you dont use it - but dont expect JACAL or any
  182.  of the extensions (excepting the Archi ones) to work thereafter.
  183.  It'll easily fit into small machines as SCM isn't a terribly large language
  184.  and as of 4e0 it's properly tail recursive (that doesn't mean you can't
  185.  make it run out of memory though..)
  186. )
  187. [ PPS2 : Some things in SLIB _really_ eat memory.
  188.   The worst I know of is if you do :
  189.   
  190.       (require 'syntax-case)
  191.       ;;; goes away and thinks about it
  192.       ;;; then reports about 1meg worth of cells exercised
  193.       
  194.   Most of SLIB works - I know that macros-that-work loads but the test seems 
  195.   to fail for the first case and work for the second.
  196.   (This is also true for a version I compiled up under RISCiX...)
  197. ]