Die ersten Programmiersprachen waren recht einfach (zum Beispiel keine Rekursion) und näherten sich der Maschinenarchitektur an, die selbst einfach war. Die Übersetzung war dann ein unkomplizierter Prozess .
Ein Compiler war einfacher als ein Interpreter, der sowohl die Daten für die Programmausführung als auch die Tabellen für die Interpretation des Quellcodes zusammenhalten musste. Und der Interpreter würde mehr Platz für sich selbst, für Programmquellcode und für Symboltabellen beanspruchen.
Der Speicher könnte (aus Kosten- und Architekturgründen) so knapp sein, dass Compiler eigenständige Programme sein könnten, die das Betriebssystem überschreiben (ich habe eines dieser Programme verwendet). Das Betriebssystem musste nach dem Kompilieren neu geladen werden, um das kompilierte Programm auszuführen. ... was klar macht, dass es einfach keine Option war, einen Dolmetscher für die eigentliche Arbeit einzusetzen .
Die von Compilern geforderte Einfachheit war allerdings so, dass die Compiler nicht sehr gut waren (Codeoptimierung steckte, wenn überhaupt, noch in den Kinderschuhen). Handgeschriebener Maschinencode hatte zumindest bis in die späten sechziger Jahre den Ruf, wesentlich effizienter zu sein als vom Compiler generierter Code. Es gab sogar ein Konzept des Code-Erweiterungsverhältnisses , das die Größe des kompilierten Codes mit der Arbeit eines sehr guten Programmierers verglich. Bei den meisten (allen?) Compilern war sie normalerweise größer als 1, was langsamere Programme und, was noch wichtiger ist, größere Programme, die mehr Speicher benötigen, bedeutete. Dies war noch in den sechziger Jahren ein Thema.
Das Interesse des Compilers lag in der einfachen Programmierung, insbesondere für Benutzer, die keine Computerspezialisten waren, wie z. B. Wissenschaftler auf verschiedenen Gebieten. Dieses Interesse galt nicht der Code-Performance. Die Zeit der Programmierer galt damals jedoch als billige Ressource. Die Kosten lagen in Computerzeit, bis 1975-1980, als die Kosten von Hardware zu Software wechselten. Das bedeutet, dass selbst Compiler von einigen Profis nicht ernst genommen wurden .
Die sehr hohen Kosten für Computerzeit waren ein weiterer Grund für die Disqualifizierung von Dolmetschern , sodass die Idee für die meisten Menschen lächerlich gewesen wäre.
Der Fall von Lisp ist sehr speziell, weil es eine extrem einfache Sprache war, die es machbar machte (und der Computer war in 58 ein bisschen größer geworden). Noch wichtiger ist, dass der Lisp-Interpreter ein Proof of Concept in Bezug auf die Selbstdefinierbarkeit von Lisp ( Meta-Zirkularität ) war, unabhängig von jeglicher Frage der Benutzerfreundlichkeit.
Der Erfolg von Lisp beruht hauptsächlich auf der Tatsache, dass diese Selbstdefinierbarkeit es zu einem hervorragenden Prüfstand für das Studium von Programmierstrukturen und das Entwerfen neuer Sprachen machte (und auch für die Bequemlichkeit der symbolischen Berechnung).