Haxe ist eine modern typisierte Programmiersprache mit einem Compiler, der aus einem Quellcode viele Zielplattformen erzeugt. Nicolas Cannasse entwickelte sie ab 2005 (damals bei Motion Twin); das Ökosystem rund um Spieleentwicklung und Web wuchs stetig. Haxe kompiliert nach JavaScript, C++, C#, Java/JVM, Python, Lua, PHP und Flash und besitzt mit HashLink und NekoVM eigene Laufzeitumgebungen.
Compiler-Aufrufe (haxe)
haxe --main Main --interp "im Interpreter testen"
haxe -cp src --main Main -js bin/main.js "nach JavaScript"
haxe -cp src --main Main -cpp bin/cpp "nach C++"
haxe -cp src --main Main -python bin/main.py
Wichtige Optionen: --run (ausführen), --debug, -D define (Bedingte Kompilierung), --dce full (totes Code-Eliminierung), --macro (Compiler-Makros), --help.
Paketmanager haxelib
haxelib setup— Bibliotheksverzeichnis festlegenhaxelib install <lib>/haxelib update/haxelib removehaxelib run <lib>— Werkzeuge aus einer Bibliothek startenhaxelib list/haxelib search
Sprachbesonderheiten
- Strikte Typisierung mit Inferenz: Typen werden geprüft, müssen aber selten hingeschrieben werden
- Enums & Pattern Matching: algebraische Datentypen mit
switch-Zerlegung - Externs: native APIs jeder Zielplattform werden typisiert eingebunden (
@:externs) - Strukturelle Subtypisierung: Typen passen zusammen, wenn ihre Struktur passt — kein Namens-Vererbungszwang
Praxis-Tipps
- Für Spiele werden OpenFL/Lime (Flash-API-Stil) und Heaps (Cannasses Engine) genutzt; HashLink erlaubt schnelle native Ausführung.
- Haxe eignet sich als Brückensprache: derselbe Geschäftslogik-Code läuft im Browser (JS) und auf dem Server (Node, HashLink, C++).
- Editor-Support gibt es für VS Code und IntelliJ;
haxe --interpist ideal für schnelle Tests ohne Build.
Verwandte Grundlagen: JavaScript-Befehle, TypeScript-Befehle, C#-Befehle, Tcl-Befehle, Smalltalk-Befehle.