Aplusplus
A++ ist eine Programmiersprache, deren Minimalismus kaum zu übertreffen ist. Ihr einziger Zweck ist es, an der Programmierung Interessierten zu helfen, so schnell und effizient wie nur möglich das Wesentliche der Programmierung zu erfassen.
Table of contents |
2 Ursprung 3 Verallgemeinerung des Lambda-Kalküls 4 Konstitutive Prinzipien 5 Weitere Eigenschaften 6 Zusammenfassung der Eigenschaften von A++ 7 Weblinks |
In keiner der in einführenden Kursen üblicherweise benutzten Programmiersprachen werden Lernende gezwungen sich mit dem Wesentlichen der Programmierung so intensiv auseinanderzusetzen wie in A++.
Der Vorteil dieses rigorosen Vorgehens besteht darin, dass in kurzer Zeit Denkmuster eingeübt werden, die einen befähigen, sich müheloser in die großen populären Programmiersprachen einzuarbeiten und in diesen in kurzer Zeit produktiv zu werden.
Der Name A++ ist eine Abkürzung von Abstraktion plus Referenz plus Synthese. Hiermit werden die drei Prinzipien von A++ benannt, die gleichzeitig ihr einziger Inhalt sind.
Diese Prinzipien stellen eine Verallgemeinerung der Grundoperationen des Lambda-Kalküls dar.
Der Schritt der Verallgemeinerung besteht darin, dass den Primitivoperationen von A++ jedwede Einschränkung genommen wird:
Im Lambda-Kalkül dagegen ist nur eine implizite Namensvergabe im Zusammenhang mit einer Synthese von Lambda-Ausdrücken vorgesehen.
Die Auswirkungen dieses zunächst als klein erscheinenden Unterschiedes sind gewaltig:
Zu den konstitutiven Prinzipien, d.h. den Prinzipien, die A++ wesentlich zu dem machen, was es ist, gehören außerdem noch die Begriffe "Closure" und "Lexical Scope".
Wesen und Zweck
Ein zur Verfügung gestellter Interpreter soll dabei behilflich sein, das Gelernte anzuwenden und zu testen.Ursprung
A++ ist aus dem Lambda-Kalkül von Alonzo Church entstanden.Verallgemeinerung des Lambda-Kalküls
Ausgehend von den Grundoperationen des Lambda-Kalküls gelangen wir durch einen Schritt der Verallgemeinerung zu den drei Primitivoperationen von A++.
In A++ ist im Begriff der Abstraktion eine explizite Namensvergabe an jeder beliebigen Stelle in einem Programm erlaubt.Konstitutive Prinzipien
Abstraktion, Referenz und Synthese als Begriffe entsprechen den sprachlichen Strukturelementen und den Grundoperationen in A++.Weitere Eigenschaften
Zusammenfassung der Eigenschaften von A++
Weblinks
Siehe auch: ARS-basierte Programmierung, ARS++, ARSAPI, Programmiersprachen zu Ausbildungszwecken