WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте
Amiga E
Класс языка алгоритмическое, процедурное, объектно-ориентированное программирование
Появился в 1993
Автор Wouter van Oortmerssen
Разработчик Воутер ван Оортмерссен[d]
Расширение файлов .e
Выпуск 3.3a
Система типов слабая, динамическая
Испытал влияние Модула-2
Сайт wouter.fov120.com/e/

Amiga E (часто называемый просто E) — объектно-ориентированный язык программирования созданный Ваутером ван Оортмерссеном (нидерл. Wouter van Oortmerssen) для ПК Amiga. Этот известный голландский программист рассматривал создание собственного языка программирования как способ облегчить решение стоящих перед ним задач, что наложило определённый отпечаток на идеологию получившегося продукта. В дальнейшей своей карьере, Ваутер ван Оортмерссен применил разработанную концепцию Amiga E при создании языков программирования Sheep для среды AmigaDE [1] и CryScript (также известный как DOG) использованный в разработке популярной игры Far Cry. [2]

Amiga E вобрал в себя черты множества самых разнообразных языков программирования, но в фундаментальных вопросах следует идеологии языка программирования Си[уточнить]. Отличительные особенности языка: возможность быстрой компиляции (что позволяет ему конкурировать со скриптовыми языками), гибкая система типов, развитая система модулей, поддержка обработки исключений и объектно-ориентированное программирование.

Типичная программа "Hello, world!" на Amiga E выглядит так:

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

Amiga E использовался при создании ядра популярного на Amiga растрового процессора изображений Photogenics и расширяемого просмотрщика текстов EvenMore[уточнить].

История

1993: Первый публичный релиз коммерческого компилятора Amiga E от автора языка.

1997: Последняя версия коммерческого компилятора Amiga E от автора языка. (3.3a)

1999: Выпущен первый сторонний компилятор Amiga E реализующий полный функционал этого языка. (Ссылка)

1999: Исходные коды компилятора Amiga E написанного на ассемблере m68k выпущены под лицензией GPL. (Ссылка)

1999: Выпущена первая версия компилятора CreativE основанного на исходном коде компилятора Amiga E.

1999: Выпущена первая версия компилятора PowerD транслирующего расширенный код Amiga E в Си, с последующей компиляцией посредством GCC. (0.01)

2000: Выпущена первая версия компилятора YAEC (сокращение от англ. Yet Another E Compiler - ещё один компилятор E). (1.0)

2001: Выпущена финальная версия компилятора CreativE. (2.12.3) (Ссылка)

2002: Выпущена финальная версия компилятора YAEC. (2.5d)

2002: Выпущена первая версия компилятора ECX написанного на самом Amiga E. (1.0)

2003: Выпущена финальная версия компилятора PowerD. (0.20)

2008: Выпущен первый публичный релиз компилятора PortablE транслирующего код Amiga E в Си. (r1)

2009: Выпущен первый публичный релиз компилятора PortablE для ОС Windows. (r4)

Реализации и диалекты

Реализация Amiga E (автор Wouter van Oortmerssen)

Первая реализация написанная на ассемблере m68k. Генерирует непосредственно машинный код Motorola 680x0.

  • Платформы: AmigaOS и совместимые;
  • Назначение: AmigaOS для процессоров m68k.
  • Состояние: Стабильный, зрелый, не поддерживается, исходный код доступен, свободно распространяется.

Диалект CreativE (автор Tomasz Wiszkowski)

Компилятор основан на исходниках компилятора Amiga E распространяемых под лицензией GPL и содержит множество расширений изначального синтаксиса.

  • Платформы: AmigaOS и совместимые;
  • Назначение: Компилятор подобный Amiga E и ограниченная поддержка разработчиков для устаревших процессоров MC68000;
  • Состояние: Стабильный, зрелый, не поддерживается, исходный код доступен, свободно распространяется.

Диалект PowerD (автор Martin Kuchinka)

Основан на языке Amiga E, но не совместим с ним из-за больших различий в синтаксисе.

  • Платформы: AmigaOS и совместимые;
  • Назначение: AmigaOS 3.0, процессоры 68020 c FPU или PPC;
  • Состояние: Стабильный, зрелый, находится в разработке, исходный код закрыт, свободно распространяется.

Диалект YAEC (автор Leif Salomonsson)

Компилятор написан на Amiga E. Использует внешние ассемблер и компоновщик;

  • Платформы: AmigaOS и совместимые;
  • Назначение: AmigaOS 3.0, процессоры 68020 c FPU;
  • Состояние: Устаревший, не законченный, не поддерживается, исходный код закрыт, свободно распространяется.

Реализация ECX (автор Leif Salomonsson)

Компилятор написанный на Amiga E. Имеет значительное число расширений. Используется для кросс-платформенной разработки.

  • Платформы: AmigaOS, AmigaOS 4 и MorphOS;
  • Назначение: AmigaOS 3.0 (процессоры 68020), AmigaOS 4, MorphOS;
  • Состояние: Стабильный, зрелый, находится в разработке, исходный код закрыт (ранее был открыт), shareware (ранее был свободен).[3]

Реализация PortablE (автор Christopher Handley)

Мета-компилятор написанный на Amiga E. Имеет значительное число расширений. Используется для кросс-платформенной разработки.

  • Платформы: Windows, AmigaOS (68k), AmigaOS 4 (PPC), AROS и MorphOS;
  • Назначение: Трансляция кода C++ и Amiga E;
  • Состояние: Стабильный, зрелый, находится в разработке, исходный код закрыт, свободно распространяется.

Примечания

  1. Eugenia Loli-Queru. "Интервью с Ваутером ван Оортмерссеном про SHEEP" (англ.). osnews.com. OSNews (12 Октября 2001). Архивировано 29 июля 2012 года.
  2. Guildhall. Faculty (англ.). smu.edu. Southern Methodist University.
  3. Leif Salomonsson. E Compiler X. Архивировано 29 июля 2012 года.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии