home *** CD-ROM | disk | FTP | other *** search
/ GEMini Atari / GEMini_Atari_CD-ROM_Walnut_Creek_December_1993.iso / files / language / clisp / anleitun.txt next >
Text File  |  1993-10-23  |  6KB  |  136 lines

  1.                    Versuch einer Anleitung zu CLISP
  2.                    ================================
  3.  
  4. Mit CLISP wird die hier vorliegende Implementierung von COMMON LISP auf
  5. Atari ST bezeichnet. Dazu gehören folgende Files:
  6.  
  7. LISP.PRG           LISP-Hauptprogramm
  8. LISPINIT.MEM       für Warmstart benötigte LISP-Daten
  9. CONFIG.LSP         Konfigurationsparameter
  10. IMPSTAND.TXT       aktueller Implementierungsstand
  11. IMPDOC.TXT         Dokumentation zur Implementierung
  12. ANLEITUN.TXT       diese Anleitung
  13.  
  14. Was ist LISP?
  15. -------------
  16.  
  17. LISP ist eine Programmiersprache, die 1959 von J. McCarthy erfunden wurde.
  18. Früher gab's viele verschiedene Dialekte, heute ist LISP durch den Industrie-
  19. Standard COMMON LISP standardisiert und weit verbreitet worden. Anwendungen
  20. reichen von der symbolischen Wissensverarbeitung (KI) über die Numerik
  21. (MACLISP lieferte einen ebensoguten Numerik-Code wie FORTRAN) bis hin zu
  22. kommerziellen Programmen wie Editoren (EMACS) oder CAD-Systemen (AUTOCAD).
  23. Eine Einführung in die Sprache ist:
  24.   Sheila Hughes: Lisp. Pitman Publishing Limited, London 1986.
  25.   107 Seiten. ca. DM 15,80.
  26. Nach einiger Zeit unentbehrlich ist das Standardwerk mit der Sprachdefinition
  27.   Guy L. Steele Jr.: Common Lisp - The Language. Digital Press.
  28.   1. Auflage 1984, 465 Seiten, ca. DM 73,60.
  29.   2. Auflage 1990, 1032 Seiten. ca. DM 94,90.
  30. LISP liegt in einer interaktiven Umgebung vor, d.h. man gibt Formen ein, die
  31. dann sofort ausgewertet werden. So kann man Variablen inspizieren, Funktionen
  32. mit wechselnden Argumenten aufrufen oder auch eigene Funktionen definieren.
  33.  
  34. Installation:
  35. -------------
  36.  
  37. Mit einem Texteditor die Strings innerhalb von CONFIG.LSP anpassen.
  38. Dann LISP.PRG starten.
  39. Auf den LISP-Prompt
  40.       > _
  41. hin eingeben:
  42.         (compile-file "config")
  43.         (load "config")
  44. und dann mit
  45.         (saveinitmem)
  46. die Datei LISPINIT.MEM überschreiben und auf den neuesten Stand bringen.
  47. (Dies bitte nur einmal machen!)
  48.  
  49. Besonderheiten:
  50. ---------------
  51.  
  52. Der aktuelle Implementierungsstand ist in IMPSTAND.TXT aufgelistet.
  53. Implementierungsdetails findet man in IMPDOC.TXT.
  54.  
  55. Tastatureingaben finden zeilenorientiert statt. Dabei werden folgende
  56. Sondertasten erkannt:
  57.   Tab                   1 bis 8 Leerzeichen
  58.   Backspace             löscht ein Zeichen nach links
  59.   Delete                löscht ein Zeichen nach rechts
  60.   Insert                fügt eine Leerstelle ein
  61.   <-                    Cursor ein Zeichen nach links
  62.   ->                    Cursor ein Zeichen nach rechts
  63.   Shift <-              Cursor an den Zeilenanfang
  64.   Shift ->              Cursor ans Zeilenende
  65.   Return, Enter         beendet das Editieren dieser Zeile
  66.   Help, Undo, F1-F10    je nach Kontext
  67.  
  68. Dreht man den Lautstärkeregler am Monitor auf, so kann man die Garbage
  69. Collections mitverfolgen: Es bimmelt am Beginn und am Ende jeder GC.
  70.  
  71. Laufende Bildschirm-Ausgaben kann man durch Drücken der rechten Maustaste
  72. vorübergehend anhalten. Durch Bewegen der Maus bei gleichzeitig gedrückter
  73. rechter Maustaste kann man die Bildschirm-Ausgabe langsam weiterlaufen
  74. lassen.
  75.  
  76. Laufende Programme können meist durch gleichzeitiges Drücken der beiden
  77. Maustasten abgebrochen werden. Sollte dies nicht funktionieren (und nur
  78. dann), kann durch gleichzeitiges Drücken einer Shift- und beider Maustasten
  79. abgebrochen werden.
  80.  
  81. Mit (exit) verläßt man das System wieder.
  82.  
  83. Neue Version
  84. ------------
  85.  
  86. In dieser Version sind gegenüber der letzten Version (vom April 1991)
  87. folgende größere Änderungen erfolgt:
  88. - Das Format der compilierten Programme hat sich geändert. Von der alten
  89.   Version compilierte Programme sind mit der neuen Version nicht ausführbar.
  90.   Daher sollten alle alten .LIB- und .FAS-Dateien gelöscht werden.
  91. - Compilierte Programme sind im Durchschnitt um ca. 7% schneller geworden,
  92.   der Compiler selbst um ca. 35%.
  93. - Hash-Tabellen sind implementiert.
  94. - Potenzier-, Arcus- und Area-Funktionen sind vollständig implementiert.
  95. - File-Streams können als Elementtypen auch Integers (insbesondere Bits) und
  96.   allgemeine Characters haben.
  97. Weitere Änderungen betrafen die Namen von Characters, die Bildschirmausgabe,
  98. die Abfrage von Sondertasten im *KEYBOARD-STREAM*, das Anhalten laufender
  99. Programme, die Fehlermeldung bei voller Diskette u.a.
  100.  
  101. Wenn's Probleme gibt:
  102. ---------------------
  103.  
  104. Bei Errors befindet man sich im Debugger:
  105.      1. Break> _
  106. Hier kann man wie üblich Formen auswerten.
  107. Außerdem:
  108.          Help
  109.                ruft Hilfestellung an.
  110.          Undo
  111.                steigt hoch in die nächsthöhere Hauptschleife.
  112.          (show-stack)
  113.                zeigt den Stackinhalt an. Das hilft bei der Fehlersuche.
  114. Außerdem kann man sich die Werte der Variablen der Funktion anzeigen lassen,
  115. in der der Absturz passierte.
  116.  
  117. Bei Speichermangel (was man an immer häufiger werdender GC und anschließender
  118. Fehlermeldung bemerkt) sollte man einige Platzfresser aus dem Speicher
  119. entfernen. Ist man jedoch bereits so weit, daß der Platz nicht einmal zum
  120. Auswerten von Formen reicht, sollte man dreimal hintereinander die Form 0
  121. auswerten lassen und dann aufräumen oder mit (exit) LISP verlassen.
  122. Tips, um Speicher zu sparen: Keine Programme im Hintergrund lassen, wenn
  123. LISP gestartet wird. Nicht mehr auszutestende Funktionen compilieren.
  124.  
  125. Bei größeren Problemen, z.B. harten Abstürzen, bitte Fehlerbeschreibung
  126. und reproduzierbare Vorgehensweise zur Erzeugung dieses Fehlers an die
  127. Autoren senden.
  128.  
  129. Autoren:
  130. --------
  131.  
  132.         Bruno Haible                    Michael Stoll
  133.         Ritterstraße 42                 Riesenfeldstraße 96
  134.         7500 Karlsruhe 1                8000 München 40
  135.  
  136.