Как стать автором
Обновить
29
0

Пользователь

Отправить сообщение
Это отдельная интересная задача :-)

Впрочем, полнотекстовый поиск никто не отменял.
Мой личный блог, если что, находится здесь: valexey.blogspot.com

А Oberspace — это, как ни странно, форум. Где любому гарантирована свобода высказываний, в отличае от иных оберон-форумов.

А то что ты эту статью не планировал — оно и видно. По содержанию :-)
Уж что-что а лисп, а тем более его более легковесные диалекты вроде Scheme, должен понять с лету любой грамотный инженер. Синтаксис там элементарный (ибо он практически отсутствует). А на счет семантики конструкций все равно в доку надо вначале посмотреть. Потому как совершенно интуитивно не ясно что делает например statement WITH в Обероне-2. И что означают именя процедур со звездочкой.

Короче, в доку все равно смотреть надо и там и там. Проще будет то, что больше похоже на то, с чем ты работал. Новичку же — будет одинаково что Оберон, что Scheme, ибо это и будет его начальная точка отсчета.
Прям таки компилятора который сразу компилит в x86_64 я не припомню. Есть трансляторы из Оберона в Си, и этот код, возможно, можно нормально собрать уже под 64 (но я не помню чтобы кто-то делал такие эксперименты). Ну и есть компиляторы под jvm и .net, и там уже через jit будет 64 битный код.

Но вообще, сейчас потихоньку движется одновременно для нескольких компиляторов работа по прикручиванию llvm-бекенда, как прикрутится, так будет и 64 бита, и вообще кодогенерация станет более качественной.
Ну, во-первых это все уже было сто раз. См UML, и см. rational rose, которая вообще по исходнику все эти графические модели строила. Не взлетело. То есть взлетело, но не стало всеобъемлющим, живет в своей узкой нише.

Дело в том, что программа многомерна. В 2D хорошо отображается лишь то, что и так просто и имеет мало элементов (например самый верхний уровень архитектуры). Об этом писал еще Брукс в своем мифическом человекомесяце.
Я планировал вдумчивую серию статей на хабре про то откуда взялся оберон (начиная с Оберон ОС), как развивался и на что годится сейчас. С его плюсами и минусами. Объективная такая серия статей, без фанатизма. Это серия статей обсуждалась и готовилась на нашем форуме. А этот вот товарищ, автор данной статьи, увидел идею публикации и быстренько накатал вот это, сильно смахивающее на рекламную брошюру обильно сдобренную ссылками на свой собственный форум, видимо в рассчете на приток новых участников на оный.

Так что мне приходится отдуваться пока в комментах.
Ну это ж красота — штука весьма субъективная. Равно как и минимализм (где тот порог, где уже не минималистичность, а примитивизм?). Кому то и С++ красиый минималистичный язык :-)
Возьмем Аду? ;-)
FOR в Обероне-07, Обероне-2, Компонентном Паскале — есть. Так что не вижу проблем.
В паскале все же не было наследования у RECORD'ов, да и сборщика мусора не водилось. Кроме того, в Оберонах принято (хотя это и не обязательно) также в рантайме иметь некую метаинформацию о модулях, переменных и прочем — то есть есть рефлексия. Часто также есть возможность динамической загрузки и выгрузки отдельного модуля.

Все это не слишком похоже на Паскаль.
Вообще, отличным инструментом для обучения является тот инструмент, на котором обучаемый (ну, например ребенок) может (возможно с помощью учителя) быстро сделать что-то интересное (интересное для него) и наглядное. Это дико мотивирует продолжать обучаться дальше.

Так вот, у Оберонов с этим вроде бы как раз все хорошо:
  1. BlackBox CB (Component Pascal) позволяет наглядно (через те самые составные документы) делать интерактивные живые графические штуки, не парясь особо о формах, и прочем. Сделать виртуального робота ездящего по полю и для него же тут рядом сделать пультр управления — да легко!
  2. Astrobe (Oberon-07/11) позволяет запрограммировать микроконтроллер. И тут уже можно ездить реальным роботом, управлять реальными физическими объектами. Причем алгоритмический код у Компонентного Паскаля и Оберона-07, вообще говоря может быть один и тот же (есть некое базовое подмножество statement'ов, где они совместимы). Скажем программа управления роботом может как управлять им в BlackBox'е так и работать в микроконтроллере и управлять реальной железной штукой.
Есть. Программирование под микроконтроллеры: Astrobe. Живой коммерческий продукт.
Скорее Модула.

Но выводить свойства языка из его синтаксиса — так себе идейка.
На обероне в основном идут исследовательские проекты. То есть миру он примерно затем же зачем и Haskell. Оберон каждый год новый. См. Active Oberon & A2.
Да, ребята жгут :-)
Именно! И тот же BB CB (для примера) и является теми самыми батарейками.
Нет, не запутался. Если человек не научится работать с типами сразу, то есть четко понимать что такое тип и зачем он нужен. Понимать зачем типы проверять до запуска приложения, то потом это привить будет очень сложно, и такое банальным кодинг-стайлом не лечится.
Ой, давай не будем сейчас тут очередной флейм на тему динамическая VS статическая типизация устраивать. А то ведь всё как раз к тому идет, ибо я считаю что питон не годится для начального обучения именно в силу динамической типизации.

И да, я обучал таких людей которые не могли сами цикл написать (да и не особо программированием интересовались). И вот с чем-чем, а с типами проблем не было (и да, я не на Обероне учил). Там были смешнее проблемы — народ по привычке текст программы воспринимал как нечто декларативное (видимо по аналогии с математикой), и никак не мог понять, что вот до этой строчки комп еще не дошел, и про нее пока не знает и ничего не исполнял что там написано. Как ни странно, тут очень сильно помог пошаговый отладчик (столь упоенно чмыримый апологетами Оберона), который позволил наглядно показать как же оно на самом деле там работает.
Ну, народ бросается в какие-то конторы прямо во время универа. И это правильно.

Основам именно что алгоритмики можно вполне и на Обероне. Вот правда-правда можно. Там ничего лишнего (угу, те самые 16 страниц описания языка) и всего хватает для таких задач. Не даром же его в Оксфорде в качестве одного из первых изучаемых ЯП преподают.

Потом на Обероне (как уже на подопытном ЯП) же отлично отрабатывать теорию и практику компиляторостроения и методов трансляции. Ну и по ОС тоже Оберон может пригодиться, у Вирта аж целая книжка по ОС Оберон написана. Подробно, компактно и ясно. То есть в плане обучалова Оберон штука в принципе годная, если с умом подходить. Ну и для некоторых научных изысканий тоже штука годная (в качестве объекта изучения).

Другое дело, что не стоит Оберон тащить во все промышленные задачи, как некоторые ярые пропагандисты делают. У простоты есть своя цена в конце концов, как, впрочем, и у сложности.
Про отступы там вызрело вот такое: www.sem-tech.net/ :-)

Но это опять таки, вторично. Ибо просто синтаксис. Это скучно. И это банально лечится единым coding style на контору.

А вот семантические заморочки, проблемы с типизацией — вот они лечатся туго. Так что нет, никаких питонов в начальном обучении. Впрочем, на счет Оберона тоже сомнения у меня некоторые имеются.

Информация

В рейтинге
Не участвует
Откуда
Нижний Новгород, Нижегородская обл., Россия
Дата рождения
Зарегистрирован
Активность