Amiga E

Amiga E, or very often simply E, is a programming language created by Wouter van Oortmerssen on the Amiga. He has since moved on to develop the SHEEP programming language for the new AmigaDE platform and the CryScript language (also known as DOG) used during the development of the video game Far Cry.

Description

Amiga E is a combination of many features from a number of languages, but follows the original C programming language most closely in terms of basic concepts. Amiga E's main benefits are fast compilation (allowing it to be used in place of a scripting language), very readable source code, flexible type system, powerful module system, exception handling (not C++ variant) and Object oriented programming.

A "hello world" program in Amiga E looks like:

PROC main()
    WriteF('Hello, World!')
ENDPROC

Amiga E was used to create the core of the popular Amiga graphics software Photogenics.

History

1993: The first public release of Amiga E.[1]

1997: The last version of Amiga E is released (3.3a).

1999: Unlimited compiler executable of Amiga E is released.[2]

1999: Source code of the Amiga E compiler in M68K assembler is released under the GPL.[3]

1999: First version of CreativE is released. Based on Sourcecode of Amiga E.

1999: First version of PowerD is released. (0.01)

2000: First version of YAEC (Yet Another E Compiler) is released. (1.0)

2001: Final version of CreativE (2.12.3) is released.[4]

2002: Final version of YAEC is released (2.5d).

2002: First public release of ECX. (1.0)

2003: Final version of PowerD is released. (0.20)

2008: First public release of PortablE. (r1)

2008: First public release of RE. (0.9)

2009: First public release of PortablE for Microsoft Windows. (r4)

Implementations

Amiga E, by Wouter van Oortmerssen

The first compiler, written in M68k assembler. Support tools written in E. Generates M68000 machine code directly.

  • Platforms: AmigaOS and compatibles.
  • Targets: AmigaOS with 68000 CPU.[5]
  • Status: Stable, mature, discontinued, source available, freeware.

CreativE, by Tomasz Wiszkowski.

Based on the GPL sources of Amiga E and adds many extensions to the compiler.

  • Platforms: AmigaOS and compatibles.
  • Targets: Like Amiga E + some limited support for generating code that takes advantage of later M680x0 CPUs.
  • Status: Stable, mature, discontinued, source available, freeware.

PowerD, by Martin Kuchinka.

Based on the AmigaE language, but not compatible with it due to changes in syntax.

  • Platforms: AmigaOS and compatibles.
  • Targets: AmigaOS 3.0 68020 CPU+FPU, PPC.
  • Status: Stable, mature, under development, closed source, freeware.

YAEC, by Leif Salomonsson.

Written from scratch in E. Uses external assembler and linker.

  • Platforms: AmigaOS and compatibles.
  • Targets: AmigaOS 3.0 with 68020 CPU and FPU.
  • Status: Obsolete, unfinished, discontinued, closed source, freeware.

ECX, by Leif Salomonsson.

A compiler and tools written from scratch in E, can compile itself, supports multiple targets and adds many extensions.

  • Platforms: AmigaOS, AmigaOS 4 and MorphOS.
  • Targets: AmigaOS 3.0 68020, AmigaOS 4, MorphOS.
  • Status: Stable, mature, under development, closed source (was open source), shareware (was freeware).[6]

RE, by Marco Antoniazzi.

Based on the AmigaE language, but not fully compatible, with some changes in syntax and additions, inspired by PowerD.

  • Platforms: AmigaOS and compatibles.
  • Targets: AmigaOS 3.0 68020 CPU+FPU, PPC.
  • Status: Stable, closed source, freeware.

PortablE, by Christopher Handley.

A meta-compiler written from scratch in E, can compile itself, supports multiple targets.

  • Platforms: Windows, AmigaOS (68k), AmigaOS 4 (PPC), AROS and MorphOS.
  • Targets: C++ and Amiga E.
  • Status: Stable, mature, under development, closed source, freeware.

References

  1. McCreary, Charles R. (October 1993). "Amiga E: Public Domain Programming Gem". Amazing Computing For The Commodore Amiga. Vol. 8 no. 10. PiM Publications. pp. 20–21. ISSN 1053-4547.
  2. Wouter van Oortmerssen. "The Amiga E v3.3a compiler". Retrieved 2012-02-04.
  3. Wouter van Oortmerssen. "The Amiga E v3.3a compiler source". Retrieved 2012-02-04.
  4. Tomasz Wiszkowski. "CreativE - AmigaE compiler/linker". Retrieved 2012-02-04.
  5. Vintenat, Lionel (April 1995). "Amiga E: un challenger pour la programmation du systeme". AmigaNews (in French). No. 78. NewsEdition. pp. 52–53. ISSN 1164-1746.
  6. Leif Salomonsson. "E Compiler X". Archived from the original on 18 September 2010. Retrieved 2010-08-13.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.