Einführung in LISP

  • Thomas Christaller
Conference paper
Part of the Informatik-Fachberichte book series (INFORMATIK, volume 159)

Zusammenfassung

Da es schon eine Reihe von deutschsprachigen Einführungen in LISP gibt [38,45,12], beschränke ich mich hier auf eine kurze Zusammenfassung. Dabei werde ich die in rneinen Augen wichtigen Eigenschaften von LISP darstellen. Dieser Teil ist deshalb besonders sorgfältig und langsam zu lesen, da hier jedes Detail zählt. Den größten Teil dieses Beitrages macht der Entwurf und die Realisierung einer Mikroversion des Flavor-Systems, eine objektorientierte Erweiterung von LISP, aus. Anhand dieses Beispiels treten sowohl Eigenschaften von LISP als auch die Vorgehensweise bei der LISP-Programmierung deutlich hervor. Dies steht im Unterschied zu vielen Einführungen, in denen viele voneinander isolierte kleine Beispiele vorgestellt werden.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Literatur

  1. [1]
    Abelson, H.; Sussmann, G.J. Structure and Interpretation of Computer Programs. MIT Press, Cambridge (MA), 1984Google Scholar
  2. Ein allgemeines Lehrbueh zur Informatik, das aber vollständig auf dem LISP-Dialekt SCHEME basiert. Meines eruehtens eines der besten Lehrbücher im Bereich Programmstrukturen Google Scholar
  3. [2]
    Allen,J. The Anatomy of LISP. McGraw-Hill, New York, 1978Google Scholar
  4. Jedem zu empfehlen, der Implementierungsteehniken von LISP-Interpretern und –Compilern erlernen möchte. Enthält sehr viel Theorie Google Scholar
  5. [3]
    Barr,A.; Feigenbaum,E. (Hrsg.) The Handbook of Artificial Intelligence. Vol. I, Vol. II William Kaufmann, Los Altos (CA), 1981MATHGoogle Scholar
  6. Das vollständige Nachschlagewerk zur Künstlichen Intelligenz. Sehr empfehlenswert. Der dritie Band ist von Cohen und Feigenbaum herausgegeben (siehe dort) Google Scholar
  7. [4]
    Barstow,D.R.; Shrobe,H.E.; Sandewall,E. (Hrsg.) Interactive Programming Environments. McGraw-Hill, New York, 1984Google Scholar
  8. Ein sehr wichtiger Sammelband zum Thema Programmierumgebungen. Behandelt neben LISP auch UNIX- Umgebungen und andere. Schön ist der immer noch futuristisch anmutende Artikel von T. Winograd über ‘Breaking the complexity barrier again’ Google Scholar
  9. [5]
    Birtwistle, G.; Dahl, O.-J.; Myhrhaug, B.; Nygaard, K. SIMULA BEGIN. Auerbach, Philadelphia, 1973Google Scholar
  10. Das ursprungsbuch über SIMULA Google Scholar
  11. [6]
    Bobrow, D.G.; Kahn, K.; Kiczales, G.; Masinter, L.; Stefik, M.; Zdybel, F. COMMONLOOPS. Merging CommonLisp and Object-Oriented Programming. Xerox PARC, Palo Alto, ISL-85–8, 1985Google Scholar
  12. Erstes Arbeitspapier füer eine standardisierte objektorientierte Erweiterung von CommonLisp. Schwierig zu lesen Google Scholar
  13. [7]
    Bromley, R.A. Programming in Common LISP. John Wiley&Son, New York, 1986Google Scholar
  14. Führt in die Benutzung der LISP-Maschinen von Symbolics ein. 1st auch brauchbar für die Maschinen von Texas Instruments und Lisp Machine Inc. (LMI) Google Scholar
  15. [8]
    Charniak, E.; McDermott, D. Introduction to Artificial Intelligence. Addison-Wesley, Reading (MA), 1985MATHGoogle Scholar
  16. Nicht nur das neuste, sondern auch das beste Buch zur Einführung in die Künstliche Intelligenz. Bezüglich Theorie und Überblick hält es eine mittlere Position zu Nilsson und Winston Google Scholar
  17. [9]
    Charniak, E.; Riesbeck, C.; McDermott, D. Artificial Intelligence programming. Lawrence Erlbaum, Hillsdale, 1980MATHGoogle Scholar
  18. Wie das vorige Buch ist auch dieses sehr gut. Leider wird der aus der Mode gekommene LISP-Dialekt UCI-LISP verwendet Google Scholar
  19. [10]
    Christaller, T.; Rome, E. LISP. Computer Magazin, Sonderheft Programmiersprachen, Oktober, 1985, S.40–46Google Scholar
  20. [11]
    Christaller, T. Die Entwicklung generischer Kontrollstrukturen aus kaskadierten ATNs. Dissertation, Univ. Hamburg, Hamburg, 1986Google Scholar
  21. Unter anderem wird hier gezeigt, wie man Kontrollstrukturen objektorientiert definieren kann. Bei geeigneter abstrakter Definition kann man mit Hilfe der multiplen Vererbung aus einfachen Kontrollstrukturen komplexere zusammenbauen Google Scholar
  22. [12]
    Christaller, T.; Rome, E.; Wittur, K.-H. Einführung in Interlisp. GMD, Sankt Augustin, 1986Google Scholar
  23. Entstanden aus Programmierkursen für Nicht-Informatiker Google Scholar
  24. [13]
    Cohen, P.R.; Feigenbaum, E.A. (Hrsg.) The Handbook of Artificial Intelligence. Vol: III William Kaufmann, Los Altos (CA), 1982MATHGoogle Scholar
  25. [14]
    Dertouzos,M.L.; Moses,J. (Hrsg.) The Computer Age: A Twenty-Year View. MIT Press, Cambridge (MA) 1979Google Scholar
  26. Ein wenig Zukunftsmusik aus dem gesamten Informatikbereich Google Scholar
  27. [15]
    di Primio,F.; Christaller, T. A Poor Man’s Flavor System. ISSCO, Universität Genf, Genf,1983Google Scholar
  28. Dieser Bericht beschreibt die Entwicklung eines objektorientierten Systems in LISP. Setzt einige Programmierkenntnisse voraus, erfreut sich aber zunehmender Beliebtheit Google Scholar
  29. [16]
    Gabriel, R. P. Performance and Evaluation of Lisp The MIT Press, London, 1985Google Scholar
  30. Vergleicht Laulzeit- und Speicherverhalten aller bis 1985 aul dem Markt erhiiltlichen LISPSysteme. Enthält auch die verwendeten benchmark-Programme Google Scholar
  31. [17]
    Ghezzi, C.; Jazayeri, M. Programming Language Concepts. John Wiley&Sons, New York, 1982MATHGoogle Scholar
  32. Ein schones Buch über Programmiersprachen ohne missionarischen Eiler für eine der vielen schönen Sprachen, die bisher entwickelt wurden Google Scholar
  33. [18]
    Goldberg, A.; Robson, D. Smalltalk 80: The Language and its Implementation. Addison Wesley, Reading (MA), 1983Google Scholar
  34. Für alle wichtig, die sehen wollen, was objektorientiertes Programmieren ist Google Scholar
  35. [19]
    Groß, E.; Walther, J.; Christaller, T.; Rome, E.; Müller, B.S. Softwareentwurf und Realisierung des Ezpertensystemwerkzeugs BABYLON mit Hilfe objektorientierter Programmierung. In: Hommel,G.; Schindler,S. GI-16. Jahrestagung. Band I Springer, Berlin, 1986, s.180–194Google Scholar
  36. [20]
    Hamann, C. Einführung in das Programmieren in LISP. De Gruyter, Berlin, 1982MATHGoogle Scholar
  37. Eine deutschsprachige Einführung. Führt in der zitierten Ausgabe für meinen Geschmack zu detailliert ein einziges Kapitel in Winston, Horn aus Google Scholar
  38. [21]
    Horowitz, E. Fundamentals of Programming Languages. Springer, Berlin, 1983CrossRefGoogle Scholar
  39. Hier findet man alle wichtigen Programmiersprachen versammelt. Sehr schönes Buch!Google Scholar
  40. [22]
    Kaisler, S.H. INTERLISP. The Language and Its Usage. John Wiley&Sons, New York, 1986Google Scholar
  41. Ein Lehrbuch zu InterLisp mit vielen Beispielen. Wichtig sind vor allem die Kapitel über die Programmierumgebung. Leider sind die Spezialitäten von Interlisp-D nicht in dem Buch enthalten. Der Autor hat aber angekündigt, daβ er diese in einem weiteren Buch beschreiben wird Google Scholar
  42. [23]
    Keene, S.E.; Moon, D.A. Flavors: Object-oriented Programming on Symbolics Computers. Symbolics, Cambridge (MA), 1985Google Scholar
  43. [24]
    Laubsch, J. ObjTalk. Eine LISP-Erweiterung zum objekt-orientierten Programmieren. Inst. für Informatik, Univ. Stuttgart, Bericht, 1982Google Scholar
  44. [25]
    Lieberman,H. A Preview of ACT1. MIT AI-Lab., AI Memo 625, Cambridge (Mass.), 1981Google Scholar
  45. Beschreibt die Actor-Sprache ACT1 auf einem sehr technischem Niveau Google Scholar
  46. [26]
    McCarthy,J.; Abrahams,P.W.; Edwards,D.J.; Hart, T.P.; Levin,M.I. LISP 1.5 Programmer’s Manual. MIT-Press, Cambridge (MA), 1962Google Scholar
  47. Nur noch historisch interessant? Das erste LISP-Handbuch Google Scholar
  48. [27]
    McCarthy, J. Recursive Functions of Symbolic Ezpressions and their Computation by Machine. Part I Communications of the ACM, 3:4, 1960, S.184–195Google Scholar
  49. Die theoretische Grundlagenarbeit zu LISP Google Scholar
  50. [28]
    McCarthy,J. History of LISP. SIGPLAN Notices, 13:8, 1978, S.217–223Google Scholar
  51. Amüsant zu lesen. Aber Stoyan bringt alles genauer und umfangreicher Google Scholar
  52. [29]
    Nebel, B. Ist LISP eine ‘langsame’ Sprache? In: B.Neumann (Hrsg.) GWAI-83 Springer, Berlin, 1983, S.21–30Google Scholar
  53. Räumt mit dem Vorurteil auf, das A.Perlis so treffend formuliert hat Google Scholar
  54. [30]
    Nebel,B. How well does a Vanilla Loop fit into a Frame? TU Berlin, Berlin, KITBericht 30, 1985Google Scholar
  55. Vergleicht verschiedene objektorientierte Erweiterungen von LISP und frame-Sprachen miteinander Google Scholar
  56. [31]
    Nilsson, N.J. Principles of Artificial Intelligence. Tioga, Palo Alto (CA), 1980MATHGoogle Scholar
  57. Eine gute, sehr theoretische Einführung mit Schwerpunkten auf Logik und Theorembeweisern Google Scholar
  58. [32]
    Roberts,R.B.; Goldstein,I.P. The FRL Manual. MIT AI-Lab., AI Memo 409, Cambridge (Mass.)Google Scholar
  59. Handbuch zu FRL mit einigen Anmerkungen zum Hintergrund. Sehr technisch Google Scholar
  60. [33]
    Sannella,M. (Hrsg.) InterLisp-D Reference Manual. Rank Xerox, Palo Alto (CA), 1984Google Scholar
  61. Interessant für Benutzer der LISP-Maschine von Rank Xerox und Siemens Google Scholar
  62. [34]
    Spade, F. Objektorientierte Programmierung in LISP. FB Kommunikationswissenschaften, FU Berlin, Berlin, 1986Google Scholar
  63. Beschreibt die Interlisp-D Mikroversion des Flavor-Systems Google Scholar
  64. [35]
    Steele, G.L. CommonLisp. Digital Press, 1984Google Scholar
  65. Der angestrebte LISP-Standard. Es ist kein Handbuch, sondern wendet sich in erster Linie an Systementwickler Google Scholar
  66. [36]
    Stefik, M.J.; Bobrow, D.G.; Kahm, K.M. Integrating Access- Oriented Programming into a Multiparadigm Environment. IEEE Software, Vol. 3:1, 1986, s.10–18Google Scholar
  67. [37]
    Stoyan, H. LISP-Anwendungsgebiete, Grundbegriffe, Geschichte. Akademie-Verlag, Berlin, 1980Google Scholar
  68. Das erste deutschsprachige Buch über LISP. Die darin beschriebene Geschichte von LISP erscheint besonders gelungen. Die beiden anderen Themen, die im Titel genannt werden, sind besser im nachfolgenden Buch behandelt Google Scholar
  69. [38]
    Stoyan, H.; Görz, G. LISP. Eine Einführung in die Programmierung. Springer, Berlin, 1984MATHGoogle Scholar
  70. Ein Lehrbuch für Informatikstudenten. ähnlich wie Abelson, Sussman mehr eine allgemeine Einführung in die Informatik, die LISP verwendet. Der LISP-Dialekt ist TLC-LISP und ist für Mikrorechner verfügbar Google Scholar
  71. [39]
    Stoyan,H.; Wedekind,H. (Hrsg.) Objektorientierte Software- und Hardwarearchitekturen. B.G. Teubner, Stuttgart, 1983Google Scholar
  72. Eine (vorwiegend) deutschsprachige Publikation. Der einführende Beitrag von Stoyan, Görz ist sehr lesenswert Google Scholar
  73. [40]
    Stroustrup, B. The C++ Programming Language. Addison-Wesley, Reading (MA), 1986MATHGoogle Scholar
  74. Beschreibt eine objektorientierte Erweiterung von C Google Scholar
  75. [41]
    Wegner,P. Capital-Intensive Software Technology. IEEE Software, 1984, Juli, S.7–45Google Scholar
  76. [42]
    Weinreb,D.; Moon,D. LISP Machine Manual. MIT, AI Laboratory, Cambridge (MA), 1984Google Scholar
  77. Interessant für ZetaLisp.Benutzer. Ist ein Bruchteil der. Gesamtdokumentation der entsprechenden LISP·Maschinen von LMI, Symbolics und Texas Instruments Google Scholar
  78. [43]
    Wilensky,R. LISP Craft. W.W. Norton, New York, 1984Google Scholar
  79. Ein schönes Einführungsbuch. Verwendet den LISP·Dialekt FranzLisp Google Scholar
  80. [44]
    Winston, P.B. Artificial Intelligence. Addison Wesley, Reading (MA), 2. Edition 1984Google Scholar
  81. Auch eine Einführung in Künstliche Intelligenz. I st aber zu oberftächlich für ein ernsthaftes Studium Google Scholar
  82. [45]
    Winston,P.B.; Born,K.P.B LISP. Addison Wesley, Reading (MA) 2. Edition, 1985Google Scholar
  83. I st ein Lehrbuch, das auf CommonLisp basiert. Vermittelt weniger Konzepte, dafür mehr Rezepte. Der Programmierstil ist mehr imperativ orientiert als in den anderen LISP·Büchern. Ist auf den Inhalt des vorigen Buches abgestimmt. Erscheint demnächst in deutsch Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • Thomas Christaller
    • 1
  1. 1.Forschungsgruppe Expertensysteme, Institut für Angewandte InformationstechnikGesellschaft für Mathematik und Datenverarbeitung mbHSankt Augustin 1Deutschland

Personalised recommendations