Amiga E Explained

Amiga E
Paradigm:Multi-paradigm

functional, object-oriented, procedural

Designer:Wouter van Oortmerssen
Discontinued:yes
Latest Release Version:v3.3a
Influenced By:Ada, C++, Lisp
Platform:Motorola 68000 series
Operating System:AmigaOS
License:freeware
File Extensions:.e

Amiga E is a programming language created by Wouter van Oortmerssen on the Amiga computer. The work on the language started in 1991 and was first released in 1993. The original incarnation of Amiga E was being developed until 1997, when the popularity of the Amiga platform dropped significantly after the bankruptcy of Amiga intellectual property owner Escom AG.[1] [2]

According to Wouter van Oortmerssen:

"It is a general-purpose programming language, and the Amiga implementation is specifically targeted at programming system applications. [...][3] "
In his own words:
"Amiga E was a tremendous success, it became one of the most popular programming languages on the Amiga."[4]

Overview

Amiga E combines features from several 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.

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

"Hello, World!" example

A "Hello, World!" program in Amiga E looks like this:

History

1993: The first public release of Amiga E;[6] the first release on Aminet was in September, although the programming language source codes were published on the Amiga E mailing list at least since May.[7]

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

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

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

Implementations and derivatives

Discontinued

Amiga E

The first compiler. It was written by Wouter van Oortmerssen in the m68k assembler. It supports tools that are written in E. The compiler generates 68000 machine code directly.

CreativE

It was created by Tomasz Wiszkowski. It is based on the GPL sources of Amiga E and adds many extensions to the compiler.[12]

PowerD

It was created by Martin Kuchinka, who cooperated with Tomasz Wiszkowski in the Amiga development group "The Blue Suns."[13] It is derived from the Amiga E and CreativE languages but is incompatible with the former due to syntax changes.[14]

YAEC

Written from scratch in Amiga E by Leif Salomonsson and published in 2001. It uses an external assembler and linker.[15] The project was abandoned in favor of ECX.

ECX

A compiler and tools written from scratch by Leif Salomonsson in Amiga E, with internal functions developed in m68k and PPC assemblers. It can compile itself, supports multiple targets, and adds many extensions.[16]

RE

RE was created by Marco Antoniazzi in PowerD. It is not fully compatible with the Amiga E.[18]

Under development

Portabl E

Created by Christopher Handley. It is a meta-compiler written from scratch in Amiga E. It can compile itself and supports multiple targets.[19]

E-VO

It is a derivative of the Amiga E compiler, written by Darren Coles. It expands upon the original language and incorporates features from the CreativE compiler.

External links

Notes and References

  1. Web site: 1994-1998: From Commodore-Amiga to ESCOM to Gateway . 2023-01-11 . Amiga Documents . en-US.
  2. Web site: van Oortmerssen . Wouter . 1999-11-04 . Statement of the future of Amiga E . dead . https://web.archive.org/web/19991104065743/http://www.ecs.soton.ac.uk/~wvo96r/e/efuture.txt . 1999-11-04 . 2023-01-12 .
  3. Web site: van Oortmerssen . Wouter . 1997-10-27 . Amiga E v3.3a release readme . 2023-01-11 . Aminet.
  4. Web site: 2009 . Amiga E . 2023-01-11 . Wouter van Oortmerssen home page.
  5. News: 1995-12-01 . Amiga E 3.1i, Cover Disk 122 . 10 . CU Amiga Magazine . 2023-01-16 . https://archive.org/details/cuamiga-magazine-070/page/n9/mode/2up?q=%22amiga+e%22 . 2012-09-20.
  6. McCreary. Charles R.. October 1993. Amiga E: Public Domain Programming Gem. Amazing Computing For The Commodore Amiga. PiM Publications. 1053-4547. 8. 10. 20–21.
  7. Web site: 1993-09-29 . Archive of sources from the AmigaE list . 2023-01-11 . Aminet.
  8. Web site: The Amiga E v3.3a compiler . 2012-02-04.
  9. Web site: The Amiga E v3.3a compiler source code . 2012-02-04.
  10. Web site: Amiga-E module with def's for 68060 CPU . 2023-01-12 . Aminet . 1995-11-02.
  11. Vintenat. Lionel. April 1995. Amiga E: un challenger pour la programmation du systeme. fr. AmigaNews. NewsEdition. 1164-1746. 78. 52–53.
  12. Web site: 2001-07-12 . CreativE - AmigaE compiler/linker v2.12.3 . 2023-01-12 . Aminet.
  13. Web site: TBS Software contact page . dead . https://web.archive.org/web/20041225110256/http://www.tbs-software.com/fp/author.phtml . 2004-12-25 . TBS Software.
  14. Web site: 2013-08-08 . PowerD homepage . 2023-01-12 . www.kuchinka.cz.
  15. Web site: 2002-01-04 . Homepage of YAEC . https://web.archive.org/web/20020104132622/http://home.swipnet.se/blubbe/YAEC/ . dead . 2002-01-04 . 2023-01-12 .
  16. Web site: E Compiler X . live . https://web.archive.org/web/20100918221755/http://www.blubbedev.net/ecx/ . 2010-09-18 . 2023-01-12.
  17. Web site: 2023-01-12 . ECX source code v2.3.1 . 2023-01-12 . blubbedev.net.
  18. Web site: 2008-11-24 . RE - Another E language compiler (68K/WUP) . 2023-01-12 . Aminet.
  19. Web site: PortablE . 2023-01-12 . cshandley.co.uk.
  20. Web site: The Portabl E language & compiler manual . 2023-01-12 . cshandley.co.uk.