ok, soweit meine euphorische Stimmungslage,
nun bringt mich bitte wieder auf den Boden der Tatsachen!
Ok, fangen wir mal an^^
Ein kleines Auszug aus einer MetaSprache:
(so mal angedacht und skizziert)
// ermittle die Uhrzeit
function getDate: Object;
// Haupteinstiegspunkt
function main: Object;
begin
print "es ist %", getData;
end
compile helloWorld
os: win 7 64 bit
db: mySql
language : delphi, dos
human lanugage : english
Erstmal würde ich eine Funktion nach dem benennen, was sie machen soll, also getDate o.ä.
Dann hast du keine Stringenz(Roter faden) in deinem Code: Zum einen definierst du allgemein eine Funktion, die halt iwas zurückgeben soll (getData), definierst aber auch eine Pascal-Main funktion die die Daten wieder ausgeben lassen soll.
Damit hast du keine Metasprache, sondern hast nur den "Komplizierten" Teil ausgelassen^^
Wenn müsste es vlt so aussehen:
Code: Alles auswählen
start:
print(from database.Get("Datum" at "sowieso"));
Hiermit sind wir aber bei dem Problem von Metasprachen: Es ist zu ungenau.
Der Computer weiß nicht, wie er sich mit der Datenbank zu verbinden hat, denn dafür gibt es 1000 und 1 Wege.
Und das ist das selbe mit Menschlicher Sprache und allem anderen:
Du musst alles _genau_ Definieren:
Versuch es mal selbst: Schreibe mal auf, was man alles machen muss um den Computer einzuschalten, lies es noch einmal durch und überlege dir bei jedem Punkt, was dort alles variiert werden kann, spezialisiere dich an dem entsprechenden Punkt und am Ende kannst du dich dann fragen, ob es immer noch so sinnvoll ist^^
Dies würde ein Programm in Delphi für eine DOS-Anwendung programmieren,
eine Schnittstelle zu einer mySql Datenbank einrichten
aus der Datenbank die Uhrzeit holen
in die jeweilige nationale schreibweise (englisch) übersetzen
und wenn wir schon dabei sind auch den deutschen Text "es ist %" mit übersetzen...
Selber punkt wie oben. Es gibt sehr viele verschiedene SQL-Implementierungen , MYSQL ist eine davon.
Jede ist iwie ander. Schlimmer wird es aber, bei der Daten Selektion: Was Interessiert dich überhaupt? Alle Datenbanken, eine Spezielle Datenbank, eine Bestimmte Tabelle oder doch nur ein einziger bestimmter Datensatz?
Dann die Sache mit den Sprachen, dazu hatte ich mal einen Tollen link gehabt, wo mal gezeigt wird, wie viele tausend Zeilen Code man benötigt, um deine Ausgabe im Code in 10 Sprachen umzusetzten.
Und das ist definitiv nicht das, was man für 1 Satz haben möchte.
Und im Endeffekt generierst du wieder Code, der Binär von einem Prozessor verarbeitet wird.
Insgesamt fassen wir also zusammen:
Du willst eine Eierlegende Wollmilchsau, die mal eben in diverse Sprachen übersetzt, mit sehr wenig Informationen viel selbst generiert und den rest willst du dann doch selber Programmieren.
Alles in allem: Das gibt es schon, nennt sich Frameworks und Kapselt einen Großteil der Aufgaben die sich eh nicht ändern, wie z.B ein Fenster darzustellen.
Trotzdem musst du noch viel selber programmieren, nicht weil es nicht anders geht, sondern weil man es nicht anders machen kann, weil die Aufgaben eine jeden Programmes unterschiedlich sind.
MfG cloidnerux.
Redundanz macht wiederholen unnötig.
quod erat expectandum