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
[Bearbeiten | Quelltext bearbeiten]Im Jahr 1993 wurde Amiga E zum ersten Mal veröffentlicht, 1997 wurde die letzte Version (3.3a) veröffentlicht. Ein unlimitierter Compiler für Amiga E wurde 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 im Jahr 2002 zum ersten Mal veröffentlicht, PortablE im Jahr 2008.[2]
Implementierungen
[Bearbeiten | Quelltext bearbeiten]Amiga E, von Wouter van Oortmerssen.
[Bearbeiten | Quelltext bearbeiten]Der erste Compiler, geschrieben in M68K-Assembler. Unterstützt in E geschriebene Tools. Erzeugt direkt M68000 Maschinen-Code.
CreativE, von Tomasz Wiszkowski.
[Bearbeiten | Quelltext bearbeiten]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.
[Bearbeiten | Quelltext bearbeiten]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.
[Bearbeiten | Quelltext bearbeiten]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.
[Bearbeiten | Quelltext bearbeiten]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.
[Bearbeiten | Quelltext bearbeiten]Ein Meta-Kompilierer komplett neu geschrieben in E, kann sich selbst kompilieren, unterstützt multiple Ziele.
E-VO / GEC, von Darren Coles.
[Bearbeiten | Quelltext bearbeiten]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
[Bearbeiten | Quelltext bearbeiten]- Amiga E home page
- ECX home page (a free PowerPC CPU implementation)
- PortablE home page (a free Windows & Amiga-compatibles implementation)
- Amiga E mailing list
- The original Amiga E manual (for v3.3a)
- A Beginner's Guide to Amiga E
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ 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. Archiviert vom (nicht mehr online verfügbar) am 18. September 2010; abgerufen am 13. August 2010. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- ↑ Christopher Handley: The PortablE language & compiler. Abgerufen am 25. April 2017.
- ↑ http://aminet.net/package/dev/e/evo