en
Aktualisiert am
23.07.2015

Die lesbare Programmiersprache

Forschung

Vom Forscherstandpunkt aus lautet die grunsätzliche Fragestellung des Lisilogic Projektes: wie kann man Software in lesbaren Sätzen und Texten beschreiben?

Es geht natürlich weit darüber hinaus, irgendwelche kryptische Punktuationen durch Wörtchen zu ersetzen: "for($i=0;$i<=5;$i++)" durch "for i from 0 to 5 do" zu ersetzen ist definitiv nicht ausreichend. Es geht darum, die zu programmierende Anwendung vom Sichtpunkt eines (beteiligten) nicht-Informatikers aus zu schreiben.

Solche Beschreibungen von Software finden sich schon in Spezifikationsdokumenten, die für den Menschen geschrieben sind, aber alles auflisten, was die Maschine braucht und tun soll, sowie in den technischen Dokumentationen, die einem Menschen erläutern, was die Software tut und wie sie es tut. Es geht darum, diese technischen aber lesbaren Beschreibungen wirksam zu machen, also dass sie die Anwendung werden, und keine mühsam zusammengesetzten Anhängsel zu einem wirkenden aber undurchsichtigen Code.


Für die meisten Grundfeatures von Webanwendungen wie Datenstruktur, Oberflächenelemente, Rollen und Rechte, Prozesse/Algorithmen ist diese Frage in einer frühen Phase des Projektes gelöst worden, die entsprechenden Parser und Übersetzer von Lisilogic sind in Entwicklung.

Für folgende Features werden noch Formulierungen gesucht:



Lisilogic tritt resolut gegen die Idee "sich schnell eine Webanwendung zusammenzuklicken". Zusammengeklickte Anwendungen können nicht dokumentiert und nur schwierig untersucht werden; sobald die Komplexität der umzusetzenden Workflows über das Elementarste reicht, wird das Zusammenklicken viel mühsamer und viel undurchsichtiger als "normale" Programmierung. Programmierer für allgemeine Programmiersprachen werden in jeder Universität ausgebildet, Konfiguratoren von diesem oder jenem System, das Anwendungen per Klick verspricht, sind entweder teure Spezialisten, die dieses System zusätzlich zur normalen Programmierung gelernt haben, oder Amateure, die es sich ohne Grundlagen beigebracht haben...

Graphische Darstellungen werden in Lisilogic mit Zurückhaltung betrachtet. Jeder Informatiker kennt bettlakengroße und wollknäuelartige UML-Diagramme und Workflowzeichnungen... Wenn graphische Darstellungen von Programmen automatisch generiert werden und vollständig sind, sind sie selten für einen Menschen nutzbar; wenn sie per Hand gestaltet werden, weichen sie allein wegen der Vereinfachung zwangsläufig von der Programmierung ab, die sie beschreiben sollen.
Zwecks Dokumentation könnten irgendwann Tabellen und Diagramme von Lisilogic automatisch erstellt werden, wenn dies sinnvoll erscheint. In der Programmiersprache oder als Programmierungstools sind sie eher unerwünscht.