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

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


ob:docu

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ob:docu [2021/06/19 18:59]
iadenisov
ob:docu [2024/02/21 18:08] (текущий)
comdiv [Языки семейства Оберон]
Строка 1: Строка 1:
 ===== Языки семейства Оберон ===== ===== Языки семейства Оберон =====
  
-Язык программирования Оберон разработан Никлаусом Виртом при разработке одноименной операционной системы. По словам автора, разработке помогло критическое осмысления языков: Модула-2, Паскаль, Ada, Smalltalk и Cedar. +Язык программирования [[ob:oberon|Оберон]] разработан Никлаусом Виртом при разработке одноименной операционной системы. По словам автора, разработке помогло критическое осмысления языков: Модула-2, Паскаль, Ada, Smalltalk и Cedar.
  
 От Оберона пошло несколько веток развития языка программирования: От Оберона пошло несколько веток развития языка программирования:
  
-[[ob:oberon|Оберон]] → [[ob:oberon-sa|Оберон-SA]] → [[ob:oberon07|Оберон-07]]+<uml> 
 +component "Oberon" as OBR #Yellow 
 +component "Oberon SA" as OSA #Gray 
 +component "Active Oberon" as AOB #LightGreen 
 +component "Oberon 2" as OB2 #LightGreen 
 +component "Оберон-07" as O07 #LightGreen 
 +component "Zonnon" as ZNN #Yellow 
 +component "Component Pascal" as CMP #LightGreen 
 +OBR -down-> OSA 
 +OBR -down-> OB2 
 +OSA -down-> O07 
 +AOB -down-> ZNN 
 +OB2 -down-> CMP 
 +OB2 -down-> AOB 
 +</uml>
  
-[[ob:oberon|Оберон]] → [[ao:|Активный Оберон]] → [[ac:|Active Cells]]+[[ob:oberon07|Оберон-07]] [[ao:|Активный Оберон]] [[ob:oberon2|Оберон-2]] | [[cp:|Компонентный Паскаль (Блэкбокс Оберон)]]
  
-[[ob:oberon|Оберон]] → [[ao:|Активный Оберон]] → [[zonnon:|Зоннон]]+Линия Оберон-07 — это авторское уточнение исходного языка без существенных добавлений.
  
-[[ob:oberon|Оберон]] → [[ob:oberon2|Оберон-2]] → [[cp:|Компонентный Паскаль]] 
  
 +===== Диаграмма наследования в развитии Оберон-технологий =====
  
-Диаграмма наследования в развитии Оберон-технологий +{{ :ob:oberongenealogy.png?1000 |}}
- +
-{{ :ob:oberongenealogy.png?800 |}}+
  
 [[http://pub.iadenisov.ru/blackbox/oberongenealogy.gv|исходники CC BY-SA 4.0]] [[http://pub.iadenisov.ru/blackbox/oberongenealogy.gv|исходники CC BY-SA 4.0]]
Строка 23: Строка 35:
 ===== Краткая история языка Паскаль ===== ===== Краткая история языка Паскаль =====
  
-Историю языков линейки Оберон вытекает из развития языка Паскаль его автором.+История языков семейства Оберон вытекает из развития языка Паскаль его автором. 
 + 
 +{{:ob:снимок_экрана_2023-01-07_в_16.38.18.png?1000|}}
  
 ==== Алгол ==== ==== Алгол ====
Строка 44: Строка 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.
 +
  
  
Строка 52: Строка 67:
  
 В центре PARC эти идеи повлияли на другие проекты, например, паскалеподобный язык Cedar. Как и Smalltalk и позднее Оберон, Cedar представлял собой не только язык программирования, но и операционную систему. Операционная система Cedar была весьма впечатляющей и мощной, однако сложной и нестабильной. В центре PARC эти идеи повлияли на другие проекты, например, паскалеподобный язык Cedar. Как и Smalltalk и позднее Оберон, Cedar представлял собой не только язык программирования, но и операционную систему. Операционная система Cedar была весьма впечатляющей и мощной, однако сложной и нестабильной.
 +
  
  
Строка 71: Строка 87:
  
 Последнее требование компонентно-ориентированного программирования — возможность динамически загружать новые компоненты. В Обероне единица загрузки та же, что и единица компиляции — модуль. Последнее требование компонентно-ориентированного программирования — возможность динамически загружать новые компоненты. В Обероне единица загрузки та же, что и единица компиляции — модуль.
 +
  
  
Строка 81: Строка 98:
  
 Главная идея уточнений по сравнению с Обероном-2 была в том, чтобы дать проекти­ров­щику компонентного каркаса более полный контроль над ее проектируемыми свойствами в плане безопасности. Положительным результатом стало то, что теперь легче обеспечить целостность больших компонентных систем, что особенно важно во время итеративных циклов проектирования, когда библитека разрабатывается, и позднее, когда архитектура системы должна быть переработана, чтобы обес­печить дальнейшую эволюцию и поддержку. Главная идея уточнений по сравнению с Обероном-2 была в том, чтобы дать проекти­ров­щику компонентного каркаса более полный контроль над ее проектируемыми свойствами в плане безопасности. Положительным результатом стало то, что теперь легче обеспечить целостность больших компонентных систем, что особенно важно во время итеративных циклов проектирования, когда библитека разрабатывается, и позднее, когда архитектура системы должна быть переработана, чтобы обес­печить дальнейшую эволюцию и поддержку.
 +
  
  
Строка 89: Строка 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 нашла в мобильных устройствах.
 +
  
  
Строка 97: Строка 116:
  
 В 1995 Н. Вирт присоединился к проекту Института автоматического контроля и измерений . Целью проекта была разработка системы позволяющая вертолету летать автономно по запрограммированному пути. Вирт разрботал систему бортового компьютера на основе процессора Strong-ARM. Кроме разработки аппаратных средств, он написал программы для различных инструментов программирования, включая разновидность компилятора Оберона с дополнительными возможностями для программирования систем реального-времени. В 1995 Н. Вирт присоединился к проекту Института автоматического контроля и измерений . Целью проекта была разработка системы позволяющая вертолету летать автономно по запрограммированному пути. Вирт разрботал систему бортового компьютера на основе процессора Strong-ARM. Кроме разработки аппаратных средств, он написал программы для различных инструментов программирования, включая разновидность компилятора Оберона с дополнительными возможностями для программирования систем реального-времени.
 +
  
  
Строка 106: Строка 126:
  
  
-==== Oberon v5 ====+ 
 +==== Oberon v5 2013 ====
  
  
Строка 117: Строка 138:
 https://www.inf.ethz.ch/personal/wirth/Oberon/Oberon07.Report.pdf https://www.inf.ethz.ch/personal/wirth/Oberon/Oberon07.Report.pdf
  
-Для этого варианта языка был обновлен компилятор Astrobe, а также был разработан новый компилятор O7 для микроконтроллеров с архитектурой ARMv{6,7E}-M:+Для этого варианта языка был обновлен компилятор Astrobe, а также был разработан новый [[ob:o7|компилятор O7]] для микроконтроллеров с архитектурой ARMv{6,7E}-M:
  
 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.1624118344.txt.gz · Последнее изменение: 2021/06/19 18:59 — iadenisov