Austrian Linux Forum

Domain Languages

Kategorien: OffTopic
4 Antworten
shevegen
shevegen am Samstag, 25. August 2007 um 11:42
Eines vorweg, meine Definition von "domain languages" oder "domain specific programming languages" ist anders als die "offizielle Wikipedia" Definition. Meiner Meinung nach ist die Wikipedia Definition zu breit gefächert und ungenau. (Auf IRC hab ich mit jemandem darüber gestritten, denn er hat einen Artikel genutzt, der meinte das BLAST eine "domain specific language" ist. BLAST ist _nichts anderes_ als 20 Buchstaben des Alphabetes, die beliebig oft in beliebiger Reihenfolge vorkommen können. Es handelt sich dabei um Aminosäuresequenzen. Ich fand es eigenartig, so etwas als DSL zu bezeichnen... aber egal, weiterlesen!) Worum es mir primär geht, ist eine Sprache, die möglichst KURZ aber dennoch lesbar, ein Problem lösen kann, auch (und vor allem) ein komplexes Problem. Ein Beispiel: Fred will eine Pizza Margherita bestellen und 2 Cola (er trinkt gerne Cola). Für eine automatisierte Bestellung könnte er folgendes "angeben": order 1 pizza margherita order 2 cola Wenn man noch zb Zeitangabe dazu machen will: at 26.11.2008 do: order 1 pizza margherita order 2 cola Man mag sich über das Format streiten, worum es mir geht ist, das man eine Sprache hat, die für einen Menschen leicht zu erkennen ist, egal ob er Programmierer oder "Normalsterblicher" ist. XML löst das leider nur zum Teil, da es zu "verbose" ist... also die ganzen <> und sind finde ich nicht besonders praktisch: margherita Mein Problem bei XML allgemein ist, das man damit nicht "so kurz wie möglich" arbeiten kann. Immer die schliessenden tags, und Fehler dürfen auch nicht sein... ich hätte lieber ein "fehlertolerantes" System (Menschen machen mal Tippfehler etc.. ein System sollte immer einen default wählen wenn ein Tippfehler da war, anstatt einfach nicht mehr zu funktionieren...) Bei Computerspielen findet man das manchmal. Da wird dann zb LUA eingesetzt um die Programm-Logik zu implementieren, während man in C++ eine Engine schreibt. So weit so gut. Ich finde die Idee dahinter einfach genial. Kurz und präzise will ich etwas beschreiben, so das ich es verstehe, und auch der Computer/Programm. Was hat das mit Linux zu tun? Nun, es wäre cool, wenn man als Anwender den Computer "beschreiben" könnte, vor allem was für Aktivitäten er durchführen sollte. Mir gefällt die "at TIME_STAMP do" Notation sehr gut. Da braucht man sich nicht deppert mit crontab auseinandersetzen. Hmm ich werde später noch den Artikel erweitern, für jetzt is einmal schluss

Kommentare

Markus René Einicher
Markus René Einicher am Donnerstag, 26. Juli 2007 um 13:21

für mich wäre wichtig, das es eine eindeutige syntax gibt, die zum Beispiel die korrekte Einrückung von Quelltext VORSCHREIBT. Du hast ja keine Ahnung was ich bei PHP alles mitmach - wie manche Leute das Darstellen!

Ich würd zum Beispiel Tabs und Umbrüche vorschreiben. Dann spart man sich viele Bereichsauszeichnungen mit Klammern usw.

Oder gehst du hier eher auf eine Kommandosprache ein als auf eine Script-/Programmier-Sprache ?

UNd was meinst du mit Artikel? Das hier is ein Forenbeitrag.

shevegen
shevegen am Donnerstag, 16. August 2007 um 07:05

Der Artikel den ich meinte, war auf einem Blog zu lesen.

Ich meine übrigens eher eine "Auszeichnungs" oder "Beschreibungssprache", eventuell
so ähnlich wie du mit deiner Sprache da wo du Beiträge schreiben kannst in PHP
oder so...

Markus René Einicher
Markus René Einicher am Samstag, 18. August 2007 um 19:41

Weiß ich jetzt nicht genau worauf du anspielst ...

shevegen
shevegen am Samstag, 25. August 2007 um 11:42

"Weiß ich jetzt nicht genau worauf du anspielst ..."

Du hattest doch deine eigene Art von "php-Interpretations-Code", irgendwelche
Sonderzeichen oder?
Kann mich nicht mehr genau erinnern, aber das war etwas kompliziert... auf IRC hast du Beispiele
gezeigt.