Amiga E
Amiga E, häufiger auch einfach E, ist eine Programmiersprache, die von Wouter van Oortmerssen auf dem Amiga entwickelt wurde. Er ist dazu übergegangen diese SHEEP-Programmiersprache für die neue AmigaDE-Plattform und die CryScript-Sprache (auch bekannt als DOG) während der Entwicklung des bekannten Computerspiels Far Cry weiterzuentwickeln.
Amiga E ist eine Kombination vieler Eigenschaften einer ganzen Anzahl von Sprachen, aber folgt in Bezug auf grundlegende Konzepte sehr stark der originalen Programmiersprache C. Die Hauptvorteile von Amiga E sind schnelles Kompilieren (wodurch es möglich ist, es als Ersatz für Skriptsprachen zu benutzen), sehr gut lesbarer Quellcode, ein flexibles Typ-System, ein starkes Modul-System, Exception-Behandlung (keine C++-Variante) und Objektorientierte Programmierung.
Ein Hello-World-Programm in Amiga E sieht folgendermaßen aus:
PROC main()
WriteF('Hello, World!')
ENDPROC
Amiga E wurde benutzt um den Kern der bekannten Amiga Grafiksoftware Photogenics zu erstellen.
Geschichte
Im Jahr 1993 wurde Amiga E zum ersten Mal veröffentlicht, in 1997 wurde die letzte Version (3.3a) veröffentlicht. Eine unlimitierter Compiler für Amiga E wurde in 1999 herausgegeben.[1] Kurz darauf wurde auch der Quellcode des Amiga-E-Compilers für den M68K-Assembler unter der GPL, die erste Version von CreativE und von PowerD veröffentlicht.
ECX (1.0) wurde in 2002 erstveröffentlicht, PortablE in 2008.[2]
Implementierungen
Amiga E, von Wouter van Oortmerssen.
Der erste Compiler, geschrieben in M68K-Assembler. Unterstützt in E geschriebene Tools. Erzeugt direkt M68000 Maschinen-Code.
CreativE, von Tomasz Wiszkowski.
Basiert auf dem GPL-lizenzierten Quellcode von Amiga E und fügt dem Compiler viele Ergänzungen hinzu.
- Plattformen: AmigaOS und kompatible.
- Zielsysteme: Wie Amiga E + limitierte Unterstützung zur Generierung von Code, der Rücksicht auf ältere M680x0 CPUs nimmt.
- Status: Stabil, ausgereift, eingestellt, Quellcode verfügbar, Freeware.
PowerD, von Martin Kuchinka.
Basierend auf der Sprache Amiga E, aber nicht damit kompatibel, wegen Änderungen in der Syntax.
- Plattformen: AmigaOS und kompatible.
- Zielsysteme: AmigaOS 3.0 68020 CPU+FPU, PPC.
- Status: Stabil, ausgereift, wird weiterentwickelt, Closed Source, Freeware.
YAEC, von Leif Salomonsson.
Komplett neu geschrieben in E. Benutzt externen Assembler und Linker.
- Plattformen: AmigaOS und kompatible.
- Zielsysteme: AmigaOS 3.0 mit 68020 CPU and FPU.
- Status: obsolet, unvollendet, eingestellt, Closed Source, freeware.
ECX, von Leif Salomonsson.
Ein Compiler und Werkzeuge komplett neu geschrieben in E, kann sich selbst kompilieren, unterstützt multiple Ziele und fügt viele Ergänzungen hinzu.
- Plattformen: AmigaOS, AmigaOS 4 und MorphOS.
- Zielsysteme: AmigaOS 3.0 68020, AmigaOS 4, MorphOS.
- Status: Stabil, ausgereift, wird weiterentwickelt, Closed Source (war Open Source), Shareware (war Freeware).[3]
PortablE, von Christopher Handley.
Ein Meta-Kompilierer komplett neu geschrieben in E, kann sich selbst kompilieren, unterstützt multiple Ziele.
E-VO / GEC, von Darren Coles.
Basiert auf dem GPL-lizenzierten Quellcode von Amiga E bzw. GEC und fügt dem Compiler viele Ergänzungen hinzu.
- Plattformen: AmigaOS und kompatible.
- Zielsysteme: Wie Amiga E.
- Status: Stabil, ausgereift, wird weiterentwickelt, Quellcode verfügbar, Freeware.[5]
Weblinks
Einzelnachweise
- Wouter van Oortmerssen: The Amiga E v3.3a compiler. März 1999, abgerufen am 16. Februar 2021 (englisch).
- Tomasz Wiszkowski: CreativE - AmigaE compiler/linker. In: aminet.net. Urban Müller, 12. Juli 2001, abgerufen am 16. Februar 2021 (englisch).
- Leif Salomonsson: E Compiler X. Abgerufen am 13. August 2010.
- Christopher Handley: The PortablE language & compiler. Abgerufen am 25. April 2017.
- http://aminet.net/package/dev/e/evo