====== Oberon ====== ===== Языки семейства Оберон ===== * Oberon * Oberon-2 (вторая версия, с поддержкой ООП) * Component Pascal (версия Oberon-2 с небольшими уточнениями) * Oberon-07 (последняя ревизия языка Оберон от [[wpru>Никлаус Вирт|Никлауса Вирта]]) ===== Особенности ===== **Основные черты Оберона** (([[http://www.chernyshov.com/PL/Oberon.htm|Язык программирования Оберон]])) * Простой и ясный синтаксис, похожий на синтаксис Паскаля (не путать с Турбо Паскалем) и Модулы-2. * Набор структурных управляющих конструкций (IF-ELSIF-...-ELSE-END, CASE, WHILE, REPEAT, LOOP) * Удобный и простой набор базовых типов (символы и строки, короткие и длинные целые и вещественные, логический тип, множества, процедурный тип) * Простые и удобные правила совместимости числовых типов (SHORTINT=>INTEGER=>LONGINT=>REAL=>LONGREAL) * Массивы (в том числе открытые и динамические), записи (расширяемые) и указатели на массивы и записи * Полный (но не избыточный) набор средств поддержки наследования и полиморфизма: проверка и охрана (динамического) типа, региональная охрана типа * Встроенный сборщик мусора * Простое модульное строение со строгим (в том числе межмодульным) контролем и динамической загрузкой модулей * Простой и строгий экспорт и импорт * Автоматическое формирование модулей определений (интерфейсов модулей) * [[Differences between Pascal and Component Pascal|Отличия Компонентного Паскаля от Паскаля]] ===== Компиляторы ===== ==== Oberon-2 ==== == XDS == [[http://www.excelsior-usa.com/xdsdl.html|Компиляторы XDS]]: Native XDS-x86 compiler for Windows, Linux. Позволяет писать проекты одновременно на языках Оберон-2, а также Modula-2 и C. == OOC == [[http://sourceforge.net/projects/ooc/|OOC]]: Оптимизирующий Oberon-2 транслятор в ANSI C с набором стандартных библиотек модулей. == JOB == [[http://www.uni-vologda.ac.ru/JOB/|JOB]]: Oberon-2 to Java Virtual Machine (JVM) Code Compiler. ==== Component Pascal ==== [[wpru>Компонентный_Паскаль|Компонентный Паскаль]] (считай, //составной//) является прямым современным потомком [[wpru>Вирт,_Никлаус|виртовского]] Паскаля и относится к семейству [[wpru>Оберон_(язык_программирования)|языков Оберон]], являющийся уточнением над языком Oberon-2. == BlackBox (BB) == [[wp>BlackBox_Component_Builder|BlackBox Component Builder]] - IDE/Framework для Компонентного Паскаля.\\ Хорошо продуманная реализация Компонентного Паскаля и каркаса, состоящего из набора подсистем компонент. Успешно используется в образовании и промышленных проектах. == Gardens Point Component Pascal (GPCP) == http://plas.fit.qut.edu.au/gpcp/ Компилятор Компонентного Паскаля, gpcp, производит код для платформы Microsoft .NET или для виртуальной машины Java (JVM). ===== Среда разработки ===== Список сред разработки для различных языков: * [[http://www.fim.uni-linz.ac.at/pow/pow.htm|POW!]] Programmers Open Workbench. Поддержка Oberon-2, Java (с помощью JDK) и C/C++. ===== Внешние ссылки ===== * [[http://www.uni-vologda.ac.ru/oberon/o2rus.htm|Язык программирования Оберон-2]], Х.Мёссенбёк, Н.Вирт 1992 * [[http://www.inr.ac.ru/~info21/cpascal/cp_report_1.4_rus.htm|Сообщение о языке Компонентный Паскаль]] (рус.), Oberon microsystems, Inc. 1997 * [[http://www.oberoncore.ru/_media/wiki/lang/wirth_n.the_programming_language_oberon-07.en.pdf|The Programming Language Oberon]] [PDF], Revision 1.11.2008 Niklaus E. Wirth (англ.) * [[http://www.inr.ac.ru/~info21/cpascal/brief_hist_pascal.htm|Краткая история Паскаля]] * Научно-образовательный проект [[http://www.inr.ac.ru/~info21/|"Информатика-21"]] * [[http://www.oberon.ch/|Сайт компании "Oberon microsystems"]], разработчика языка Компонетный Паскаль и программного каркаса BlackBox Component Builder (ранее Oberon/F).