Was ist so toll an Lisp?
Lisp ist die großartigste Idee in der gesamten Computerwelt über dessen "kosmische" Bedeutung immer weniger Leute Bescheid wissen.
Ich denke, Lisp zu lernen ist ein pädagogisches Mittel, um Programmierer zu "kräftigeren Denkern" zu machen und gibt ihnen enorme Hebelwirkungen beim Erschaffen komplexer Systeme.
Einstein sagte, "Mache die Dinge so einfach wie möglich, aber nicht einfacher." Lisp ist genau das. Wer die Idee hinter Lisp einmal verstanden hat, beginnt einen Gedankengang, der besagt: "Nimm das schwierigste und tiefgreifendste Ding, das du tun musst, mach es großartig und baue alles Leichtere darauf auf."
Das ist das Versprechen von Lisp und der Anreiz von Lambda (der Lob gebührt hier Turing, Gödel und Church, nicht McCarthy).
McCarthy's großer Treffer war, Lisp auf nur fünf Konstrukten aufzubauen ('atom', 'cons', 'car' etc.). Um zu verstehen was ich meine, hilft es die ersten 14 Seiten der Lisp 1.5 Gebrauchsanweisung durchzustudieren. Seite 13 ist die gesamte Computerwelt auf einer Seite. Wenn du die Implikationen der eval-Funktionen verstanden hast, siehst du "unbegrenztes Programmieren in einem Augapfel", wie Alan Kay es so schön ausdrückt.
Dieser Denkkontext ist auch was Kay meint, wenn er sagt, "Denkkontext ist 80 IQ-Punkte wert."
Wenn wir den Maschinencode-Teil von Lisp ignorieren, gibt es einen steilen, rasanten Anstieg vom nackten Metall / den fünf Konstruktoren zu den höchsten Disziplinen in der Programmierung ("starke künstliche Intelligenz", Cyc etc.). "Ein kometenhafter Aufstieg!" nach unserem Englischen Dichter.
Lisp befreit dich von allen Schellen, die dir von anderen Programmiersprachen auferlegt werden. Das Late-Binding aller Dinge erlaubt Metaprogrammierung, dein Programm schreibt andere Programme; Macros, die dir ermöglichen, die Syntax zu erweitern etc. etc.
Anstatt "Computerkram" in Dinge zu unterteilen, die schwächer sind als das Ganze, wie Datenstrukturen, Prozeduren und Funktionen, wie sie in Programmiersprachen üblich sind, ist jeder Lisp-Code eine Rekursion der gesamten Möglichkeiten des Computers.
Es bedeutet auch, dass selbst komplexe Projekte nicht kompliziert sein sein müssen, weil man die richtigen "Lisps" zur Unterstützung seiner abstrakten Ideen entwickeln kann.
Die Idee hinter Lisp ist von höchster Bedeutung mit kosmischen Auswirkungen auf Computer für alle Zeiten (ich sage nicht, dass es keine Entdeckungen in Zukunft geben wird, die wichtiger als Lisp sein werden, aber es ist möglich). Lisp ist ein wahrer Götterfunken.