Künstliche Intelligenz pp 1-35 | Cite as
Einführung in LISP
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.
Literatur
- [1]Abelson, H.; Sussmann, G.J. Structure and Interpretation of Computer Programs. MIT Press, Cambridge (MA), 1984Google Scholar
- 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
- [2]Allen,J. The Anatomy of LISP. McGraw-Hill, New York, 1978Google Scholar
- Jedem zu empfehlen, der Implementierungsteehniken von LISP-Interpretern und –Compilern erlernen möchte. Enthält sehr viel Theorie Google Scholar
- [3]Barr,A.; Feigenbaum,E. (Hrsg.) The Handbook of Artificial Intelligence. Vol. I, Vol. II William Kaufmann, Los Altos (CA), 1981MATHGoogle Scholar
- Das vollständige Nachschlagewerk zur Künstlichen Intelligenz. Sehr empfehlenswert. Der dritie Band ist von Cohen und Feigenbaum herausgegeben (siehe dort) Google Scholar
- [4]Barstow,D.R.; Shrobe,H.E.; Sandewall,E. (Hrsg.) Interactive Programming Environments. McGraw-Hill, New York, 1984Google Scholar
- 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
- [5]Birtwistle, G.; Dahl, O.-J.; Myhrhaug, B.; Nygaard, K. SIMULA BEGIN. Auerbach, Philadelphia, 1973Google Scholar
- Das ursprungsbuch über SIMULA Google Scholar
- [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
- Erstes Arbeitspapier füer eine standardisierte objektorientierte Erweiterung von CommonLisp. Schwierig zu lesen Google Scholar
- [7]Bromley, R.A. Programming in Common LISP. John Wiley&Son, New York, 1986Google Scholar
- 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
- [8]Charniak, E.; McDermott, D. Introduction to Artificial Intelligence. Addison-Wesley, Reading (MA), 1985MATHGoogle Scholar
- 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
- [9]Charniak, E.; Riesbeck, C.; McDermott, D. Artificial Intelligence programming. Lawrence Erlbaum, Hillsdale, 1980MATHGoogle Scholar
- Wie das vorige Buch ist auch dieses sehr gut. Leider wird der aus der Mode gekommene LISP-Dialekt UCI-LISP verwendet Google Scholar
- [10]Christaller, T.; Rome, E. LISP. Computer Magazin, Sonderheft Programmiersprachen, Oktober, 1985, S.40–46Google Scholar
- [11]Christaller, T. Die Entwicklung generischer Kontrollstrukturen aus kaskadierten ATNs. Dissertation, Univ. Hamburg, Hamburg, 1986Google Scholar
- 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
- [12]Christaller, T.; Rome, E.; Wittur, K.-H. Einführung in Interlisp. GMD, Sankt Augustin, 1986Google Scholar
- Entstanden aus Programmierkursen für Nicht-Informatiker Google Scholar
- [13]Cohen, P.R.; Feigenbaum, E.A. (Hrsg.) The Handbook of Artificial Intelligence. Vol: III William Kaufmann, Los Altos (CA), 1982MATHGoogle Scholar
- [14]Dertouzos,M.L.; Moses,J. (Hrsg.) The Computer Age: A Twenty-Year View. MIT Press, Cambridge (MA) 1979Google Scholar
- Ein wenig Zukunftsmusik aus dem gesamten Informatikbereich Google Scholar
- [15]di Primio,F.; Christaller, T. A Poor Man’s Flavor System. ISSCO, Universität Genf, Genf,1983Google Scholar
- Dieser Bericht beschreibt die Entwicklung eines objektorientierten Systems in LISP. Setzt einige Programmierkenntnisse voraus, erfreut sich aber zunehmender Beliebtheit Google Scholar
- [16]Gabriel, R. P. Performance and Evaluation of Lisp The MIT Press, London, 1985Google Scholar
- Vergleicht Laulzeit- und Speicherverhalten aller bis 1985 aul dem Markt erhiiltlichen LISPSysteme. Enthält auch die verwendeten benchmark-Programme Google Scholar
- [17]Ghezzi, C.; Jazayeri, M. Programming Language Concepts. John Wiley&Sons, New York, 1982MATHGoogle Scholar
- Ein schones Buch über Programmiersprachen ohne missionarischen Eiler für eine der vielen schönen Sprachen, die bisher entwickelt wurden Google Scholar
- [18]Goldberg, A.; Robson, D. Smalltalk 80: The Language and its Implementation. Addison Wesley, Reading (MA), 1983Google Scholar
- Für alle wichtig, die sehen wollen, was objektorientiertes Programmieren ist Google Scholar
- [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
- [20]Hamann, C. Einführung in das Programmieren in LISP. De Gruyter, Berlin, 1982MATHGoogle Scholar
- 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
- [21]Horowitz, E. Fundamentals of Programming Languages. Springer, Berlin, 1983CrossRefGoogle Scholar
- Hier findet man alle wichtigen Programmiersprachen versammelt. Sehr schönes Buch!Google Scholar
- [22]Kaisler, S.H. INTERLISP. The Language and Its Usage. John Wiley&Sons, New York, 1986Google Scholar
- 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
- [23]Keene, S.E.; Moon, D.A. Flavors: Object-oriented Programming on Symbolics Computers. Symbolics, Cambridge (MA), 1985Google Scholar
- [24]Laubsch, J. ObjTalk. Eine LISP-Erweiterung zum objekt-orientierten Programmieren. Inst. für Informatik, Univ. Stuttgart, Bericht, 1982Google Scholar
- [25]Lieberman,H. A Preview of ACT1. MIT AI-Lab., AI Memo 625, Cambridge (Mass.), 1981Google Scholar
- Beschreibt die Actor-Sprache ACT1 auf einem sehr technischem Niveau Google Scholar
- [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
- Nur noch historisch interessant? Das erste LISP-Handbuch Google Scholar
- [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
- Die theoretische Grundlagenarbeit zu LISP Google Scholar
- [28]McCarthy,J. History of LISP. SIGPLAN Notices, 13:8, 1978, S.217–223Google Scholar
- Amüsant zu lesen. Aber Stoyan bringt alles genauer und umfangreicher Google Scholar
- [29]Nebel, B. Ist LISP eine ‘langsame’ Sprache? In: B.Neumann (Hrsg.) GWAI-83 Springer, Berlin, 1983, S.21–30Google Scholar
- Räumt mit dem Vorurteil auf, das A.Perlis so treffend formuliert hat Google Scholar
- [30]Nebel,B. How well does a Vanilla Loop fit into a Frame? TU Berlin, Berlin, KITBericht 30, 1985Google Scholar
- Vergleicht verschiedene objektorientierte Erweiterungen von LISP und frame-Sprachen miteinander Google Scholar
- [31]Nilsson, N.J. Principles of Artificial Intelligence. Tioga, Palo Alto (CA), 1980MATHGoogle Scholar
- Eine gute, sehr theoretische Einführung mit Schwerpunkten auf Logik und Theorembeweisern Google Scholar
- [32]Roberts,R.B.; Goldstein,I.P. The FRL Manual. MIT AI-Lab., AI Memo 409, Cambridge (Mass.)Google Scholar
- Handbuch zu FRL mit einigen Anmerkungen zum Hintergrund. Sehr technisch Google Scholar
- [33]Sannella,M. (Hrsg.) InterLisp-D Reference Manual. Rank Xerox, Palo Alto (CA), 1984Google Scholar
- Interessant für Benutzer der LISP-Maschine von Rank Xerox und Siemens Google Scholar
- [34]Spade, F. Objektorientierte Programmierung in LISP. FB Kommunikationswissenschaften, FU Berlin, Berlin, 1986Google Scholar
- Beschreibt die Interlisp-D Mikroversion des Flavor-Systems Google Scholar
- [35]Steele, G.L. CommonLisp. Digital Press, 1984Google Scholar
- Der angestrebte LISP-Standard. Es ist kein Handbuch, sondern wendet sich in erster Linie an Systementwickler Google Scholar
- [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
- [37]Stoyan, H. LISP-Anwendungsgebiete, Grundbegriffe, Geschichte. Akademie-Verlag, Berlin, 1980Google Scholar
- 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
- [38]Stoyan, H.; Görz, G. LISP. Eine Einführung in die Programmierung. Springer, Berlin, 1984MATHGoogle Scholar
- 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
- [39]Stoyan,H.; Wedekind,H. (Hrsg.) Objektorientierte Software- und Hardwarearchitekturen. B.G. Teubner, Stuttgart, 1983Google Scholar
- Eine (vorwiegend) deutschsprachige Publikation. Der einführende Beitrag von Stoyan, Görz ist sehr lesenswert Google Scholar
- [40]Stroustrup, B. The C++ Programming Language. Addison-Wesley, Reading (MA), 1986MATHGoogle Scholar
- Beschreibt eine objektorientierte Erweiterung von C Google Scholar
- [41]Wegner,P. Capital-Intensive Software Technology. IEEE Software, 1984, Juli, S.7–45Google Scholar
- [42]Weinreb,D.; Moon,D. LISP Machine Manual. MIT, AI Laboratory, Cambridge (MA), 1984Google Scholar
- Interessant für ZetaLisp.Benutzer. Ist ein Bruchteil der. Gesamtdokumentation der entsprechenden LISP·Maschinen von LMI, Symbolics und Texas Instruments Google Scholar
- [43]Wilensky,R. LISP Craft. W.W. Norton, New York, 1984Google Scholar
- Ein schönes Einführungsbuch. Verwendet den LISP·Dialekt FranzLisp Google Scholar
- [44]Winston, P.B. Artificial Intelligence. Addison Wesley, Reading (MA), 2. Edition 1984Google Scholar
- Auch eine Einführung in Künstliche Intelligenz. I st aber zu oberftächlich für ein ernsthaftes Studium Google Scholar
- [45]Winston,P.B.; Born,K.P.B LISP. Addison Wesley, Reading (MA) 2. Edition, 1985Google Scholar
- 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