Оберон (язык программирования)

Когда говорят об Обероне, то может иметься в виду:

  • язык программирования;
  • операционная среда;
  • семейство близкородственных языков/систем программирования.

Как язык программирования, Оберон является прямым наследником Паскаля и Модулы-2. Удивительно, но факт: он одновременно и проще, и намного мощнее, чем Паскаль и Модула.

  • Проще — благодаря исключению ряда средств, полезность которых на практике оказалась маргинальной или сомнительной (например, перечислимые типы и типы-диапазоны; в случае Модулы это ещё и вложенные модули, а также отдельные модули-определения).
  • Намного мощнее — благодаря введению механизма автоматического управления памятью, ради полноценной интеграции которого в язык пришлось исключить/модифицировать некоторые языковые средства (например, вместо вариантных записей теперь следует использовать типы-потомки, произведенные от одного предка).

В первоначальном Обероне (1988) есть основной механизм объектно-ориентированного программирования — механизм расширения типов (наследование и полиморфизм).

В Обероне-2 (Вирт, Мессенбек, 1992) добавлены «методы» — процедуры, связанные с типом. В типах-потомках методы типа-предка могут переопределяться (с сохранением сигнатуры).

В Компонентном Паскале (Oberon microsystems, 1999) введен ряд уточнений по сравнению с Обероном-2, важных для повышения надежности больших программных комплексов; в частности, теперь язык полностью поддерживает методологию компонентно-ориентированного программирования. Благодаря последнему обстоятельству, Компонентный Паскаль на данный момент является, по-видимому, наиболее совершенным вариантом «классических» Оберонов.

Есть и группа экспериментальных языков, близкородственных Оберону, но отклоняющихся дальше от линии Оберон/Оберон-2/Компонентный Паскаль. Это Active Oberon и Zonnon. Их развивают в группе сподвижника Никлауса Вирта по проектам Модула-2 и Оберон Юрга Гуткнехта.

Есть ещё Оберон-0, Оберон-X, Oberon.NET … и этот список не полон. Дело в том, что простота Оберона и наличие исходников оригинального Оберона позволяет легко адаптировать его для специальных классов задач. Но все эти Обероны очень близки между собой, поскольку и первоначальный Оберон очень прост.

Наиболее зрелыми, видимо, следует считать ETH Oberon, реализации которого имеются для многих платформ, и Компонентный Паскаль.

Есть несколько систем разработки программ для различных вариантов языка Оберон: ETH Oberon, доступная для многих вычислительных платформ; оптимизирующий компилятор XDS для Oberon-2; Блэкбокс (BlackBox Component Builder) для Компонентного Паскаля.

Программы, написанные на языке программирования Оберон требуют определенной поддержки во время выполнения (динамический загрузчик и централизованно выполняемый автоматический сбор мусора). Поэтому, вообще говоря, одного компилятора здесь недостаточно — нужна специальная операционная среда. На самом деле такой операционной среде не обязательно нужна отдельная операционная система: она сама по себе может представлять собой операционную систему. Таковы системы Native Oberon для первоначального Оберона и Bluebottle для Active Oberon. В качестве операционной среды может выступать, например, платформа .NET компании Майкрософт, в которой реализовано автоматическое управление памятью (сбор мусора). Под .NET работают Oberon.NET и Zonnon, но эти проекты ещё не достигли необходимой степени зрелости, чтобы рекомендовать их в качестве рабочих инструментов.

Существует аналог Оберона — Глагол, который, в отличие от Оберона, изначально ориентирован на русский язык и использует русскоязычные управляющие слова.

Ссылки


 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home