Umstieg zu JM° / JM° für Java-Entwickler
JM° für Java-Entwickler
Hier einige hilfreiche Informationen für die Verwendung von JM°.
- JM°-Dateien werden interpretiert, weshalb keine "class"-Dateien existieren. Änderungen an einer "jmo"-Datei werden somit beim nächsten Ausführen direkt ausgeführt.
- Klassen werden in JM° "Typen" genannt und beginnen immer mit einem Großbuchstaben.
- Ein "new" entfällt, der direkte Aufruf eines Typ's erzeugt ein neues Objekt.
- Es existieren keine Schlüsselwörter, nur Steuer-Objekte.
- "if" wird zu "If", "while" zu "While", "for" zu "For", "try" zu "Try", ...
- Die geschweiften Klammern '{}' entfallen, ebenso das Semikolon ';' am Ende einer Zeile.
- Variablen beginnen mit einem Kleinbuchstaben, Konstanten werden ohne "final" ganz einfach mit Großbuchstaben geschrieben.
- Es entfallen "public", "protected", "private". Generell sind alle Funktionen "public", Variablen und Konstanten sind "private". Private Funktionen beginnen mit einem Unterstrich ("._init").
- Eine main-Funktion ist nicht nötig, da wir uns mit der JMo-Skript-Datei direkt im Main-Body des Typs "Root" befinden. Vereinfacht gesagt bedeutet dies, dass alle Befehle im Skript von oben nach unten direkt ausgeführt werden.
- Atomare Typen beginnen mit Großbuchstaben: int
> Int - Aus "double" wird "Dec", "String" wird kurz zu "Str", "boolean" zu "Bool".
- Auch atomare Objekte sind Objekte und haben Funktionen.
- JM° verwendet eigentlich "nil", jedoch wird "null" als Alias akzeptiert.
- Klammern "()" können entfallen, wenn nur ein Argument übergeben wird.
- Für Variablen oder Konstanten kann aber muss kein Typ definiert werden. Wird kein Typ definiert, so merken sich Variablen/Konstanten den ersten zugewiesenen Typ.
- Variablen dürfen generell nicht "nil" (null) sein. Wird dies jedoch gewünscht, so muss an den Variablen-Namen ein Fragezeichen (z.B. "abc?") angehängt werden.
- Die Definition einer Funktion wird mit zwei Doppelpunkten eingeleitet und hat folgenden Aufbau: "::<name>(<args...>) <return
- ".equals" und "==" sind identisch, Strings können auch auch mit "==" verglichen werden.
- Die Zuweisung einer Variable oder Konstante muss immer ein "=" enthalten! Aus "a++" wird somit "a=++"
- Powered by
OghsWiki
-