Университет | ETH | Н.Вирт | Oberon Home Page | Oberon Reference Site | Juice | JOB | АплетыНовое


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




Н. Вирт
Никлаус Вирт

Язык Оберон создан в 1987 году Никлаусом Виртом, профессором Института компьютерных систем Федерального технического университета (ETH, Цюрих, Швейцария), автором языков Паскаль и Модула-2.
Язык носит имя спутника планеты Уран. Фотографии и сведения о спутнике Оберон можно найти здесь, здесь и здесь.

Оберон отличается от Модулы-2 отсутствием многих необязательных конструкций; добавлены же в язык средства объектно-ориентированного программирования -- расширяемые записи. Оберон -- это самый простой универсальный язык. При этом, продолжая традицию Паскаля и Модулы-2, он обеспечивает строгий контроль на этапе трансляции, способствуя созданию надежных программ.


Основные черты Оберона


Х. Мёссенбёк
Ханспетер Мёссенбёк

Оберон-2

В 1992 году были приняты расширения языка Оберон, предложенные Ханспетером Мёссенбёком. Расширенный язык получил название Оберон-2. Основное нововведение -- связанные с типами процедуры (в Object Pascal это виртуальные методы, в Си++ и Яве - методы экземпляра). Сейчас Оберон-2 является фактическим стандартом языка. Описание языка Оберон-2 на русском языке.


Дубовые требования

Летом 1993 года в лондонском пригороде Кройдоне (Croydon) в отеле "Дубовый" ("Oakwood") состоялась конференция разработчиков Оберон-компиляторов и программистов, на которой были согласованы требования к составу библиотечных модулей, сопровождающих реализации Оберона. Принятый документ известен под названием "Oakwood guidelines" ("Дубовые требования"). В подготовке этого документа с российской стороны участвовали  Алексей Недоря и Андрей Кадач, ныне сотрудники новосибирской фирмы XDS.


Оберон-системы

Первоначально Оберон возник в рамках проекта создания операционной системы для однопользовательской рабочей станции Ceres. Эта ОС, также носящая имя Оберон, была написана (на Обероне) Н.Виртом и Юргом Гуткнехтом (gutknecht@inf.ethz.ch).

Впоследствии эта Оберон-система была перенесена на множество платформ: Amiga, Linux, Macintosh, Unix (DECstation, HP station, RS600, Silicon Graphics, SparcStation), PowerMac, Windows. Сейчас это семейство оригинальных Оберон-систем известно под названием Oberon V4.

Полный перечень известных Оберон-систем можно найти здесь. Как правило они доступны вместе с исходным текстом.


Другие реализации Оберона

Кроме канонической реализации Оберона в составе Оберон-системы существует более 20 компиляторов языка и конверторов Оберон => Си. Их полный список находится здесь.

Можно отметить


Juice-технология

Летом 1996 года профессором Калифорнийского университета в Ирвине, учеником Н.Вирта Михаэлем Францем и его аспирантом Томасом Кистлером была представлена технология распространения исполнимого кода в Интернет, названная авторами Juice (по-русски - сок). Juice основан на использовании Оберона и влючает с одной стороны инструментальную компоненту для Оберон-системы Oberon System 3, обеспечивающую компиляцию написанных на Обероне модулей в платформно-независимое представление. Второй частью Juice является дополнение (plug-in) к Интернет-браузерам, обеспечивающее компиляцию получаемого Juice-кода "на лету" в родной код, его загрузку и исполнение.

Juice превосходит Java-технологию во всем кроме величины затрат на рекламу:


JOB - новый компилятор Оберона-2

JOB - это компилятор Оберона-2 в байт-код виртуальной машины Ява (JVM). Разработан С.Свердловым (Вологда, ВГПУ) Компилятор работает в Windows 95/NT. Генерирует файлы классов (.class), которые могут загружаться и исполняться виртуальной машиной языка Ява. Позволяет создавать приложения и аплеты. Содержит стандартные для Оберона (см. Дубовые требования) библиотеки а также интерфейсы для Java API.


Оберон в России


   Компилятор JOB          

XDS Compiler
Образовательная версия
XDS-компилятора

N.Wirth & XDS
Н. Вирт и команда XDS
(Новосибирск, 1996)


Оберон в обучении

Оберон - идеальный язык для изучения программирования. Он прост, понятен, неизбыточен. При этом содержит необходимые и достаточные средства структурного, объектно-ориентированного и модульно-компонентного программирования. Оберон великолепно подходит и для изучения методов трансляции, и как объект и как инструмент.

Оберон используется во многих западных университетах. Особенно популярен в Щвейцарии, Австрии, Германии. В некоторых из этих университетов он является основным языком при изучении программирования. Список университетов и преподавателей, активно использующих Оберон в обучении можно найти на Oberon-странице ETH.

Оберон упоминается в темах работ, выполняемых студентами на механико-математическом факультете Новосибирского университета.

В Вологодском педагогическом университете Оберон используется на отделении прикладной математики в курсе "Языки программирования и методы трансляции" с 1996 года. В настоящее время Оберон обязателен для изучения студентами 2 курса. На Обероне (наряду с другими языками) выполняются индивидуальные задания. Одним из заданий является разработка лексического анализатора, который в некоторых вариантах заданий реализуется для Оберона.
      Применяем Oberon/F (бесплатная версия для учебных заведений), предварительную версию компилятора JOB, а весной 1998 года попробовали бесплатную демо-версию XDS.
      C ноября 1998 года в учебном процессе используется образовательная версия компилятора XDS.
      Основу второй части курса "Языки программирования и методы трансляции" (конструирование компилятора) составляет разработка транслятора для минимального подмножества Оберона (этот язык называется "O"). Компилятор O бывает в результате записан на Паскале, Обероне, Си, а в сезоне 1997/98 был исполнен еще и на Яве и Модуле-2.
      С использованием компилятора JOB были написаны на Обероне-2 аплеты: Тетрис, Бегущая строка, Морской бой, Mnemonic, Filler, Lines, Сеть, Voracity, Кубик Рубика, Тест, которые вы можете увидеть на наших страницах.


Публикации на русском языке

Здесь названы известные мне (с3с) публикации об Обероне и смежных вопросах на русском языке. Если вы знаете другие, сообщите.

  1. Джонсон Т., Браун Р., Содерблом Л. Спутники Урана. В мире науки. №6, 1987
  2. Вирт Н. Язык программирования Оберон (пересмотренное сообщение) // Системная информатика. -- Новосибирск: Наука, 1991. -- Вып. 1. -- С. 40-63.
  3. Кауфман В. Ш. Языки программирования. Концепции и принципы - М. Радио и связь, 1993
  4. Супрун А.Д. Oberon – новый продукт создателей Pascal и Modula-2. Компьютеры+Программы №5, 1994
  5. Орлов С. Компонентное ПО и объектная прикладная среда Oberon. Computer Week Moscow №37, 1995
  6. Богатырев Р. Java и Juice: дуэль технологий ?! Компьютерра №34, 1996
  7. Никлаус Вирт. Долой "жирные" программы. Открытые системы №6(20)/96
  8. Свердлов С. Оберон - воплощение мечты Никлауса Вирта. Компьютерра, №46 (173) 25 ноября 1996
  9. Р.Богатырев. Даст ли Oberon новый импульс развитию платформы Digital Alpha. СomputerWeekly, №40, 1997
  10. Свердлов С. Маленький большой язык Оберон. PC Week/RE, №35 (109) от 9/9/1997
  11. Михаэль Франц. Java: критическая оценка. Мир ПК №8/97
  12. Карло Пешио. Никлаус Вирт о культуре разработки ПО. Открытые системы №1/98
  13. Р.Богатырев. Гадание на кофейной гуще. Мир ПК №2/98
  14. M. Franz, T. Kistler. Есть ли у Java альтернативы? СomputerWeekly, №14, 1998
  15. Р.Богатырев Язык как основа архитектуры. Проект Lilith. СomputerWeekly, №19, 1998
  16. Р.Богатырев Язык как основа архитектуры. Проект "Кронос" и путь к технологиям XDS. СomputerWeekly, №20, 1998
  17. Р.Богатырев. Язык как основа архитектуры. Средства кроссразработки и технологии XDS. СomputerWeekly, №21, 1998
  18. Н. Вирт. От Модулы к Оберону. Перевод Р.Богатырева
  19. Н. Вирт. Проектирование системы с нуля. Перевод Р.Богатырева
  20. Н. Вирт. Modula-2 и объектно-ориентированное программирование. Перевод Р.Богатырева
  21. Х. Мёссенбёк, Н. Вирт. Различия между языками Оберон и Оберон-2. Перевод Р.Богатырева
  22. Ю. Гуткнехт. Oberon в системе образования. Перевод Р.Богатырева
  23. Ю. Гуткнехт. Oberon: перспективы эволюции. Перевод Р.Богатырева
  24. Х. Мёссенбёк. Плюсы и минусы объектно-ориентированного программирования.
    Перевод Р.Богатырева
  25. М. Франц. Динамическая кодогенерация: ключ к переносимому программному обеспечению. Перевод Р.Богатырева
  26. Н.Вирт От разработки языков программирования к конструированию компьютеровНовое. Выступление при получении премии Тьюринга. Микропроцессорные средства и системы, Москва, 1989, №4


Источники


The Oberon Webring Navigator
По-русски только у нас
Через предыдущий | Предыдущий | Следующий | Через следующий | Наугад | 5 следующих
Список | Присоединиться

Университет | ETH | Н.Вирт | Oberon Home Page | Oberon Reference Site | Juice | JOB | АплетыНовое


Июль 1999г.

 TM    Rambler's Top100 


Oberon - Webring 

Наверх