Инструменты пользователя

Инструменты сайта


ob:docu

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ob:docu [2022/08/15 17:16]
madzi [Языки семейства Оберон]
ob:docu [2024/02/21 18:08] (текущий)
comdiv [Языки семейства Оберон]
Строка 4: Строка 4:
  
 От Оберона пошло несколько веток развития языка программирования: От Оберона пошло несколько веток развития языка программирования:
 +
 <uml> <uml>
 component "Oberon" as OBR #Yellow component "Oberon" as OBR #Yellow
Строка 13: Строка 14:
 component "Component Pascal" as CMP #LightGreen component "Component Pascal" as CMP #LightGreen
 OBR -down-> OSA OBR -down-> OSA
-OBR -down-> AOB 
 OBR -down-> OB2 OBR -down-> OB2
 OSA -down-> O07 OSA -down-> O07
 AOB -down-> ZNN AOB -down-> ZNN
 OB2 -down-> CMP OB2 -down-> CMP
 +OB2 -down-> AOB
 </uml> </uml>
  
 [[ob:oberon07|Оберон-07]] | [[ao:|Активный Оберон]] | [[ob:oberon2|Оберон-2]] | [[cp:|Компонентный Паскаль (Блэкбокс Оберон)]] [[ob:oberon07|Оберон-07]] | [[ao:|Активный Оберон]] | [[ob:oberon2|Оберон-2]] | [[cp:|Компонентный Паскаль (Блэкбокс Оберон)]]
  
-<uml> +Линия Оберон-07 — это авторское уточнение исходного языка без существенных добавлений.
-folder "Pascal (N.Wirth)"+
-  component "Pascal" as Pascal +
-}+
  
-folder "Modula-2 (N.Wirth)" { 
-  component "Modula-2" as Modula2 
-} 
  
-folder "Oberon (N.Wirth)" { 
-  component "Oberon" as Oberon 
-} 
- 
-folder "Oberon SA (N.Wirth)" { 
-  component "Oberon SA" as OberonSA 
-} 
- 
-folder "Object Oberon ()" { 
-  component "Object Oberon" as ObjectOberon 
-} 
- 
-folder "Oberon-2 (N.Wirth,H.Mossenbok)" { 
-  component "Oberon-2" as Oberon2 
-} 
- 
-folder "Active Oberon ()" { 
-  component "AOS" as AOS 
-  component "JaOS" as JAOS 
-  component "BlueBottle" as BlueBottle 
-  component "Active Oberon" as ActiveOberon 
-  AOS -> JAOS 
-  AOS -> BlueBottle 
-  BlueBottle -> ActiveOberon 
-} 
- 
-folder "Zonnon (J.Gutknecht)" { 
-  component "Zonnon" as Zonnon 
-} 
- 
-folder "Oberon/L ()" { 
-  component "Oberon/L" as OberonL 
-} 
- 
-folder "Component Pascal ()" { 
-  component ComponentPascal as CP 
-} 
- 
-Pascal -down-> Modula2 
-Modula2 -down-> Oberon 
-Oberon -down-> OberonSA 
-Oberon -down-> ObjectOberon 
-ObjectOberon -down-> Oberon2 
-Oberon2 -down-> OberonL 
-OberonL -down-> CP 
-ObjectOberon -down-> ActiveOberon 
-ActiveOberon -down-> Zonnon 
-Oberon ..> ActiveOberon 
-</uml> 
 ===== Диаграмма наследования в развитии Оберон-технологий ===== ===== Диаграмма наследования в развитии Оберон-технологий =====
  
-{{ :ob:oberongenealogy.png?800 |}}+{{ :ob:oberongenealogy.png?1000 |}}
  
 [[http://pub.iadenisov.ru/blackbox/oberongenealogy.gv|исходники CC BY-SA 4.0]] [[http://pub.iadenisov.ru/blackbox/oberongenealogy.gv|исходники CC BY-SA 4.0]]
Строка 90: Строка 36:
  
 История языков семейства Оберон вытекает из развития языка Паскаль его автором. История языков семейства Оберон вытекает из развития языка Паскаль его автором.
 +
 +{{:ob:снимок_экрана_2023-01-07_в_16.38.18.png?1000|}}
  
 ==== Алгол ==== ==== Алгол ====
Строка 110: Строка 58:
  
 Успех Модулы-2 был наиболее значителен в задачах с высокими требованиями на надеж­ность, таких как системы управления движением. <Например, бортовое программное обес­печение на запускаемых в настоящее время российских спутниках связи пишется на Модуле-2 с помощью кросс-среды разработки приложений, описанной А.А.Колташевым в докладе на конференции JMLC'2003; см. Modular Programming Languages. Lecture Notes in Computer Science (LNCS 2789), Springer-Verlag, 2003, cc. 98-101. Успех Модулы-2 был наиболее значителен в задачах с высокими требованиями на надеж­ность, таких как системы управления движением. <Например, бортовое программное обес­печение на запускаемых в настоящее время российских спутниках связи пишется на Модуле-2 с помощью кросс-среды разработки приложений, описанной А.А.Колташевым в докладе на конференции JMLC'2003; см. Modular Programming Languages. Lecture Notes in Computer Science (LNCS 2789), Springer-Verlag, 2003, cc. 98-101.
 +
  
  
Строка 118: Строка 67:
  
 В центре PARC эти идеи повлияли на другие проекты, например, паскалеподобный язык Cedar. Как и Smalltalk и позднее Оберон, Cedar представлял собой не только язык программирования, но и операционную систему. Операционная система Cedar была весьма впечатляющей и мощной, однако сложной и нестабильной. В центре PARC эти идеи повлияли на другие проекты, например, паскалеподобный язык Cedar. Как и Smalltalk и позднее Оберон, Cedar представлял собой не только язык программирования, но и операционную систему. Операционная система Cedar была весьма впечатляющей и мощной, однако сложной и нестабильной.
 +
  
  
Строка 137: Строка 87:
  
 Последнее требование компонентно-ориентированного программирования — возможность динамически загружать новые компоненты. В Обероне единица загрузки та же, что и единица компиляции — модуль. Последнее требование компонентно-ориентированного программирования — возможность динамически загружать новые компоненты. В Обероне единица загрузки та же, что и единица компиляции — модуль.
 +
  
  
Строка 147: Строка 98:
  
 Главная идея уточнений по сравнению с Обероном-2 была в том, чтобы дать проекти­ров­щику компонентного каркаса более полный контроль над ее проектируемыми свойствами в плане безопасности. Положительным результатом стало то, что теперь легче обеспечить целостность больших компонентных систем, что особенно важно во время итеративных циклов проектирования, когда библитека разрабатывается, и позднее, когда архитектура системы должна быть переработана, чтобы обес­печить дальнейшую эволюцию и поддержку. Главная идея уточнений по сравнению с Обероном-2 была в том, чтобы дать проекти­ров­щику компонентного каркаса более полный контроль над ее проектируемыми свойствами в плане безопасности. Положительным результатом стало то, что теперь легче обеспечить целостность больших компонентных систем, что особенно важно во время итеративных циклов проектирования, когда библитека разрабатывается, и позднее, когда архитектура системы должна быть переработана, чтобы обес­печить дальнейшую эволюцию и поддержку.
 +
  
  
Строка 155: Строка 107:
  
 Недавно диапазон приложений системы BlackBox Component Builder был значительно расширен за счет среды кросс-программирования Denia, которая является компонентом, расширающим систему Блэкбокс. Denia позволяет выполнять кросс-программирование на Компо­нен­тном Паскале для новой операционной системы реального времени JBed, которая полностью реализована на Компонентном Паскале. JBed предназначен для встроенных систем и приложений с жесткими требованиям реального времени [hard real-time requirements], например, в робототехнике и промышленной автоматизации. Большое применение JBed нашла в мобильных устройствах. Недавно диапазон приложений системы BlackBox Component Builder был значительно расширен за счет среды кросс-программирования Denia, которая является компонентом, расширающим систему Блэкбокс. Denia позволяет выполнять кросс-программирование на Компо­нен­тном Паскале для новой операционной системы реального времени JBed, которая полностью реализована на Компонентном Паскале. JBed предназначен для встроенных систем и приложений с жесткими требованиям реального времени [hard real-time requirements], например, в робототехнике и промышленной автоматизации. Большое применение JBed нашла в мобильных устройствах.
 +
  
  
Строка 163: Строка 116:
  
 В 1995 Н. Вирт присоединился к проекту Института автоматического контроля и измерений . Целью проекта была разработка системы позволяющая вертолету летать автономно по запрограммированному пути. Вирт разрботал систему бортового компьютера на основе процессора Strong-ARM. Кроме разработки аппаратных средств, он написал программы для различных инструментов программирования, включая разновидность компилятора Оберона с дополнительными возможностями для программирования систем реального-времени. В 1995 Н. Вирт присоединился к проекту Института автоматического контроля и измерений . Целью проекта была разработка системы позволяющая вертолету летать автономно по запрограммированному пути. Вирт разрботал систему бортового компьютера на основе процессора Strong-ARM. Кроме разработки аппаратных средств, он написал программы для различных инструментов программирования, включая разновидность компилятора Оберона с дополнительными возможностями для программирования систем реального-времени.
 +
  
  
Строка 172: Строка 126:
  
  
-==== Oberon v5 ====+ 
 +==== Oberon v5 2013 ====
  
  
Строка 186: Строка 141:
  
 https://github.com/aixp/O7 https://github.com/aixp/O7
 +
 +
 +
 +==== Active Oberon 2019 ====
 +
 +Репозиторий Active Object System (AOS aka A2) git repository (from 9.12.2022)
 +
 +https://gitlab.inf.ethz.ch/felixf/oberon/-/tree/main
 +
 +
 +**Описание языка Активный Оберон 2019 на английском** 
 +
 +ETH Oberon (2019) Language Report
 +
 +Felix Friedrich, Florian Negele, October 31, 2019
 +
 +https://gitlab.inf.ethz.ch/felixf/oberon/-/blob/main/docu/OberonLanguageReport.pdf
 +
 + 
 +
 +**Описание языка Активный Оберон 2019 на русском**
 +
 +Феликс Фридрих, Флориан Негель, 31 октября 2019
 +
 +Перевод - Николай Кондрин, Денис Будяк, 2020
 +
 +[[https://gitlab.inf.ethz.ch/felixf/oberon/-/blob/main/docu/OberonLanguageReport%20(Russian%20translation).md]]
  
  
ob/docu.1660572985.txt.gz · Последнее изменение: 2022/08/15 17:16 — madzi