RUЭВМ
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Апрель 2024
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930     

Календарь Календарь

Последние темы
» Вити больше нет!
автор bug19 Пн Фев 20 2023, 19:54

» Собираем оригинальный Орион 128
автор bug19 Пн Фев 20 2023, 19:47

» Проблема плющеного экрана ОРИОНА
автор kanzler Пн Ноя 28 2022, 12:05

» Орион 128 и его клоны возрождение 2019-2022 год
автор kanzler Пн Ноя 28 2022, 12:03

» Электроника КР-04. Информация, документы, фото.
автор kanzler Пн Ноя 28 2022, 12:02

» Новости форума
автор kanzler Пн Ноя 28 2022, 11:52

» Орион-128 НГМД запуск 2021 года
автор matrixplus Сб Сен 10 2022, 17:36

» ПЗУ F800 для РК86
автор ведущий_специалист Сб Сен 10 2022, 10:37

» Микропроцессорная лаборатория "Микролаб К580ИК80", УМК-80, УМПК-80 и др.
автор Электротехник Вт Июл 26 2022, 19:33

» Орион-128 SD карта в Орионе
автор matrixplus Чт Июн 02 2022, 09:00

» 7 Мая. День Радио!
автор Viktor2312 Чт Май 12 2022, 10:58

» Серия: Массовая радио библиотека. МРБ
автор Viktor2312 Ср Май 11 2022, 12:17

» Полезные книги
автор Viktor2312 Пн Май 09 2022, 15:07

» Орион 128 Стандарты портов и системной шины Х2
автор matrixplus Вс Май 08 2022, 23:08

» Орион-128 и Орион ПРО еще раз про блоки питания
автор matrixplus Вс Май 08 2022, 19:09

» Орион-128 Программаторы
автор matrixplus Вс Май 08 2022, 19:02

» Орион ПРО история сборки 2021 до 2022
автор matrixplus Вс Май 08 2022, 18:47

» Анонсы монет (New coin).
автор Viktor2312 Сб Май 07 2022, 23:11

» Хочу свой усилок для квартиры собрать не спеша
автор Viktor2312 Сб Май 07 2022, 19:33

» Амфитон 25у-002С
автор Viktor2312 Сб Май 07 2022, 09:38

» Майнер: T-Rex
автор Viktor2312 Вс Май 01 2022, 09:12

» GoWin. Изучение документации. SUG100-2.6E_Gowin Software User Guide. Среда разработки EDA.
автор Viktor2312 Пн Апр 25 2022, 01:01

» GoWin. Изучение документации. UG286-1.9.1E Gowin Clock User Guide.
автор Viktor2312 Сб Апр 23 2022, 18:22

» GoWin. Documentation Database. Device. GW2A.
автор Viktor2312 Ср Апр 20 2022, 14:08

» GOWIN AEC IP
автор Viktor2312 Ср Апр 20 2022, 12:08

Самые активные пользователи за месяц
Нет пользователей

Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск


Что такое Оберон и с чем его едят.

Перейти вниз

Что такое Оберон и с чем его едят. Empty Что такое Оберон и с чем его едят.

Сообщение  Viktor2312 Чт Ноя 17 2016, 13:02

1

.
.

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


Оберон — язык программирования высокого уровня, разработанный Никлаусом Виртом, для исполнения программ на котором предназначена одноимённая операционная система, авторами которой являются Никлаус Вирт и Юрг Гуткнехт.


Системы и среды

____Программы, написанные на языке программирования Оберон, требуют определённой поддержки во время выполнения — им необходим динамический загрузчик и централизованно выполняемый автоматический сборщик мусора, для этого программам на языке Оберон нужна специальная операционная среда. Обычным способом её реализации является добавление в систему набора библиотек, реализующих необходимые компоненты, хотя, вообще говоря, операционной среде вовсе не обязательно нужна отдельная операционная система: она сама по себе может представлять собой операционную систему. Таковы системы Native Oberon для первоначального Оберона и A2 для Активного Оберона. На данный момент существуют компиляторы Оберон в байт-код виртуальной Java-машины и CLI для виртуальной машины .NET.
____Операционные системы и среды для исполнения программ на языках семейства Оберон, развившихся из первоначальной Системы Оберон, являются ETH Oberon, BlackBox Component Builder, WinOberon, A2 и др.
____На основе Оберона были разработаны проекты Оберон-0, Оберон-X и другие. Простота Оберона и наличие исходных текстов оригинальной реализации позволяют легко адаптировать его для специальных классов задач. Но все эти Обероны очень близки между собой, поскольку и первоначальный Оберон очень прост.


История языка

____Основой для Оберона послужил язык Модула-2, выросший из Паскаля, (по словам Вирта, первоначально систему хотели писать непосредственно на Модуле, но пришли к выводу о необходимости её доработки и сокращения, что и привело к появлению Оберона). Целью проекта (Project Oberon) Никлауса Вирта и Юрга Гуткнехта в 1986—1989 годы было создание с нуля обозримой и надежной операционной системы для однопользовательской рабочей станции.
____Для реализации этого проекта в 1988 году Никлаусом Виртом был спроектирован язык программирования высокого уровня общего назначения, также названный Оберон.
____В 1989 году в Швейцарской высшей технической школе Цюриха (ETH) была выпущена первая реализация Оберона для процессоров семейства NS32000. Он был создан в качестве компонента операционной среды Оберон. Этот компилятор требует менее 50 Кбайт памяти, состоит из 6 модулей общим объёмом около 4000 строк и сам себя компилирует за 15 секунд на компьютере с процессором NS32532 (тактовая частота — 25 МГц).


Язык Оберон

Нововведения

____Просто невозможно поблагодарить всех тех, кто так или иначе подпитывал своими идеями то, что теперь называется Oberon. Большинство идей пришло от использования и изучения существующих языков, таких как Modula-2, Ada, Smalltalk и Cedar, которые часто предостерегали нас от того, как не надо делать.
Никлаус Вирт

____Язык сохранил основные черты синтаксиса Модулы и был объектным расширением. Это позволило отказаться от механизма вариантных записей Модулы, являющихся отступлением от первоначальной строгой статической типизации, что дало возможность ввести механизм автоматического управления памятью — сборку мусора: из языка исключена возможность освобождения динамически выделенной памяти с помощью особого оператора, а вместо него сама среда исполнения содержит модуль, возвращающий неиспользуемую память системе. Автоматическое управление памятью является средством повышения надёжности программ с динамическими структурами данных, так как исключает человеческие ошибки, свойственные, например, таким языкам, как С/C++.

Упрощение синтаксиса

____Чтобы добиться наибольшей надёжности и производительности трансляции, было предпринято значительное упрощение языка за счёт его отказа от средств, которые были сочтены ненужными (исходя из опыта разработки, реализации и применения других языков), либо усложняли компилятор без достаточного оправдания с точки зрения производительности, либо были достаточно сложны, чтобы быть отправленными во внешние библиотеки, либо плохо совмещались с механизмами модульности и автоматического управления памятью: записи с вариантами, перечислимые типы, типы-диапазоны, множества общего вида, беззнаковый целый тип, локальные модули, модули определений, списки экспорта, оператор for, прежний вариант оператора with, специальный синтаксис определения главной программы. Рудиментарные средства поддержки параллельного программирования, имевшиеся в Модуле-2, не вошли в язык, так как он обслуживал однопользовательскую операционную систему. В целях упрощения отказались от обработки исключений.
____Было упрощено описание массивов (индексы массивов могут быть только целочисленными и всегда начинаются с нуля, подобно языку Си), ограничено использование указателей — указатели могут существовать только на записи и массивы, в списках импорта указывается только импортируемый модуль, а при использовании импортированных имён требуется обязательная квалификация (явное указание имени модуля-экспортёра). В статье «От Модулы к Оберону» Вирт подробно пояснил причины удаления каждого из элементов.
____Из соображений «достаточного минимума» в язык не были включены в качестве явного синтаксического понятия методы (процедуры и функции, связанные с типом), так как этот механизм в самом общем виде легко смоделировать, создавая в объектах (записях в языке Оберон) поля процедурного типа и присваивая им процедуры, соответствующие методам. Таким образом, в Обероне минимальными средствами поддерживается объектно-ориентированное программирование для упрощения процесса трансляции кода и ускорения этого процесса.
____Благодаря внесённым изменениям, Оберон стал синтаксически проще. Описание его синтаксиса поместилось на одной странице, полное описание языка занимает около 20 страниц, что вдвое меньше, чем описание Модулы-2. Оберон является если не минимальным, то, во всяком случае, одним из самых малых по объёму универсальных языков программирования высокого уровня.
____Эпиграфом к описанию оригинального Оберона было выбрано высказывание Эйнштейна: «Делай настолько просто, насколько возможно, но не проще этого».



Viktor2312
RIP

Сообщения : 15492
Дата регистрации : 2012-08-10
Возраст : 45
Откуда : Пятигорск

Вернуться к началу Перейти вниз

Вернуться к началу

- Похожие темы

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения