Ich programmiere seit ein paar Jahren in Python, PHP, Java und C und habe gerade Hacker und Maler gelesen, also würde ich gerne LISP ausprobieren!
Ich verstehe, dass es völlig anders ist als das, was ich weiß und dass es nicht einfach sein wird. Ich denke auch (bitte korrigieren Sie mich, wenn ich falsch liege), dass LISP viel weniger Community und Entwicklung bietet. Meine Frage ist also: Was ist der beste Weg, um LISP zu lernen?
Es würde mir nichts ausmachen, Bücher zu kaufen oder etwas Zeit zu investieren. Ich möchte nur nicht, dass es verschwendet wird.
Die "letzte" Idee wäre, LISP für die Webentwicklung zu verwenden, und ich weiß, dass dies nicht so häufig vorkommt. Ich weiß, dass es gut ist, mein Lernen zu planen, bevor Sie das erste Buch oder Tutorial auswählen und viel Zeit mit etwas verbringen, das möglicherweise nicht funktioniert sei der beste Weg!
Vielen Dank für Ihre Antworten!
edit: Ich habe Practical Common Lisp gelesen und war: ... lang, hart, interessant und hat mich definitiv in Lisp ins Rollen gebracht, danach habe ich den kleinen Schema gelesen und es war kurz, lustig und sehr, sehr gut für meine gesamte Programmierung. Meine Empfehlung wäre also, zuerst den kleinen Intriganten zu lesen und dann (es ist ein paar Stunden und es lohnt sich) zu entscheiden, ob Lisp (oder Schema oder welcher Dialekt auch immer) nicht das ist, wonach Sie suchen, Sie werden trotzdem viel Spaß haben neue Denkweise über Rekursion!
quelle
Antworten:
Versuchen Sie, Practical Common Lisp von Peter Seibel zu lesen .
quelle
Mein persönlicher Favorit ist Abelson & Sussman Struktur und Interpretation von Computerprogrammen . Es verwendet Scheme, einen schönen und sauberen Dialekt von Lisp.
Wenn Sie einen praktischeren Ansatz bevorzugen, sollten Sie vielleicht ein Lisp-Framework für das Webdesign auswählen (ich habe keine Ahnung, ob es ein solches Biest gibt) und sofort einsteigen.
quelle
Vielleicht möchten Sie mit The Little Schemer als Aufwärmübung beginnen. Es ist kein praktisches Buch über das Schreiben von Lisp-Produktionsprogrammen, aber es ist ein großartiges Buch, um zu lernen, wie man in Lisp denkt .
quelle
Das MIT hat einen vollständigen LISP-Kurs im DIVX- und MPEG-Format zur Verfügung gestellt. Ich empfehle es sehr.
http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/
quelle
Es gibt jetzt ein Buch namens "Land of LISP" , das LISP-Programmierung durch das Schreiben von Textspielen im Stil der 80er Jahre lehrt. Ich lese es jetzt und es ist sehr gut geschrieben und nimmt sich selbst nicht zu ernst, was mir gefällt.
quelle
Hier gibt es mehrere Möglichkeiten. Erstens unterscheiden sich Scheme und Common Lisp in ziemlich tiefer Hinsicht ziemlich (wie beim Scoping). Sie sollten zunächst eine auswählen und eine Weile dabei bleiben . Ich bin ein Common Lisp-Fan, aber das könnte eine dieser religiösen Fragen zwischen vi und EMACS sein.
Wählen Sie für Scheme die Programmiersprache Scheme von Kent Dybvig , gefolgt von SICP.
Für Common Lisp sowie für Practical Common Lisp würde ich David Lamkins ' Successful Lisp empfehlen . Successful Lisp ist auch kostenlos online verfügbar .
Schauen Sie sich danach Lisp in Small Pieces von Queinnec und Norvigs Lisp in AI-Buch an .
Marty Hall hat eine schöne Liste bei Johns Hopkins.
Aktualisiert : Ich meine nicht, für immer dabei zu bleiben, nur dass der Versuch, beide gleichzeitig zu lernen, verwirrend wäre.
quelle
Holen Sie sich das Land von Lisp von Conrad Barski. Es ist eine unterhaltsame Einführung in die Lisp-Programmierung mit Cartoons und Spielen.
quelle
Ich würde Project Euler als hervorragende Quelle für kleine Probleme empfehlen, mit denen Sie sich jede neue Programmiersprache beibringen können.
quelle
Ansi Common Lisp von Paul Graham ist ein gutes Buch.
Ich denke, es könnte vergriffen sein, also ist es am besten, es über Amazon zu bekommen. Ich habe das Buch für eine "Natural Language Processing" -Klasse bekommen, die ich in meinem zweiten Studienjahr absolviert habe. Wir mussten die Programmierprojekte in LISP schreiben, und so musste ich Lisp schnell lernen.
Das Buch hat mir sehr geholfen.
quelle
Einmal hatte ich ein Problem. Ich wusste nicht, lisp. Also habe ich beschlossen, LISP in einer Box herunterzuladen.
Dann fand ich mich mit einer Emacs-Installation ohne Hilfe oder Dokumentation wieder.
Dann hatte ich zwei Probleme.
quelle
Für ernsthafte Lernende würde ich PAIP von Norvig empfehlen . Es ist eine ausgezeichnete Ressource, um sowohl Lisp als auch KI zu lernen.
quelle
Berkeley bietet CS61a im Podcast-Format an. Dies ist eine Einführung in die CS-Klasse, die auf SICP basiert. Es ist eine modernere Version als die Videos von 1982, die MIT zur Verfügung hat.
quelle
Ich arbeite mich gerade durch Lisp und bin auf "das Buch" gestoßen, um Lisp zu lernen. Es wurde von Rainer Joswig vorgeschlagen
Das Buch heißt Common Lisp: Eine sanfte Einführung in die symbolische Berechnung und kann als PDF heruntergeladen werden. Der Autor beginnt im ersten Kapitel mit einem UML-ähnlichen Ansatz für Lisp und führt schrittweise mehr und mehr Lisp-Syntax ein.
Ich habe mir auch das praktische Lisp angesehen und denke, dass der Autor viele erforderliche Informationen beschönigt, selbst für einen erfahrenen Programmierer. Dieses Buch scheint das nicht zu tun (ich bin noch nicht ganz fertig, aber ich fand es nützlich genug, um es vorzuschlagen).
Eine weitere Sache, Sie benötigen eine Umgebung, in der Sie arbeiten können. Ich habe festgestellt, dass Lisp in a Box gut funktioniert. Es läuft unter Windows und Linux und verwendet eMacs.
quelle
Ich bin von LISP durch seinen JVM-Dialekt - Clojure - angezogen worden. Clojure ist seitdem eine Art großartiges LISP
Mit anderen Worten, Clojure kann genau hier und jetzt in der Produktion eingesetzt werden.
Wenn es um Ressourcen geht, gibt es mindestens 4 Bücher und pflanzliche Online-Ressourcen:
quelle
Ich habe es genossen, Practical Common LISP und ANSI Common LISP zu lesen .
Auf LISP sieht interessant aus, aber bei 190 Dollar scheint ein wenig teuer für ein Buch.
quelle
Für die Webentwicklung sollten Sie sich hunchentoot ansehen , einen Webserver, der in Common Lisp geschrieben ist.
quelle
Ich fand, dass das Durcharbeiten der Übungen in "The Little Schemer" wirklich dazu beigetragen hat, die rekursive, musterangepasste Seite meines Denkens zu verfeinern und die Arbeit in XSLT erheblich zu vereinfachen.
quelle
Ich empfehle zunächst eine sanfte Einführung in die symbolische Berechnung oder das praktische Common Lisp, basierend auf Ihren Programmiererfahrungen. Zum Üben verwende ich Allegro CL 8.2 Free Express Edition unter Windows. Das Üben macht viel Spaß.
quelle
Eine Art schwer zu beantwortende Frage ... Ich denke, alles hängt von Ihrem Lernstil ab.
Ich habe LISP in meinen KI- und Expertensystemklassen am College gelernt, aber so lerne ich ... Ich bin kein großartiger Buchlerner, ich möchte lieber, dass jemand es mir in einer Klassenumgebung erklärt.
LISP ist definitiv eine einzigartige Sprache und erfordert einen neuen Gedankengang, wenn Sie an konventionelle C-, Java- und PHP-Programmierung gewöhnt sind.
Viel Glück für Sie!
quelle
Ich fand, dass das Lesen des Buches SICP mir wirklich beim Lernen geholfen hat. Ich habe Steel Bank Common Lisp (SBCL) verwendet und war damit sehr erfolgreich.
Viel Glück
quelle
Schnapp dir einen Eimer mit ('s und) und geh in die Stadt.
quelle
Ich weiß nicht, dass Lisp etwas Besonderes ist, das es vom Erlernen einer anderen Sprache unterscheidet. Sie müssen es nur verwenden und seine Funktionen ausprobieren.
Eine Möglichkeit könnte sein, ein einfaches Projekt auszuprobieren .
Eine weitere Option, die speziell für Lisp gilt, besteht darin, eine Emacs-Erweiterung zu schreiben, die Sie bei Ihrer regulären Arbeit unterstützt.
quelle
Lesen Sie diese Bücher der Reihe nach: Sanfte Einführung in die symbolische Berechnung, ANSI Common Lisp von Paul Graham, und fahren Sie dann mit Practical Common Lisp fort. Oder überspringen Sie die ACL und verwenden Sie sie als Referenz, während Sie sich durch PCL arbeiten.
quelle