LINUX.ORG.RU

Лекция Юрга Гуткнехта «Проект Оберон: 30 лет» в Москве

 , , gutknecht,


3

5

24 октября в Университете Дмитрия Пожарского пройдёт лекция швейцарского профессора Юрга Гуткнехта, соавтора языков Pascal и Oberon, коллеги легендарного Никлауса Вирта.

В программе — совместная лекция и дискуссия «Проект Оберон: 30 лет» Лекторы: Президент Швейцарского общества информатики, профессор ETH Zurich, д-р Юрг Гуткнехт и Ведущий научный сотрудник отдела теоретической физики ИЯИ РАН, координатор проекта «Информатика-21», д.ф.-м.н. Фёдор Васильевич Ткачёв.

17:30, ЦЭМИ РАН (Нахимовский проспект, 47), аудитория 520. Регистрация и пропуск не требуется.

>>> Подробности



Проверено: Shaman007 ()
Последнее исправление: Shaman007 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Никак, break/continue специально созданы, чтобы избавиться от необходимости goto.

В продвинутых ЯП, даже break/continue с метками есть, чтобы из вложенных циклов выходить. В менее продвинутых приходиться в этих случаях использовать тот же goto, что правильнее и дешевле, чем городить переменную состояния и делать двойной break/continue (ну или увеличивать вложенность очередным if'ом).

Ни один человек в здравом уме не воспротивится break/continue, потому что сразу логически понятно куда переход, в отличии от goto, который может быть куда угодно. И то использование goto, для обработки ошибок в языке без обработки исключений, как в ядре Linux - это золотой стандарт.

unDEFER ★★★★★
()
Ответ на: комментарий от ugoday

Java соответствует целям корпораций, а оберон — нет. В чём, собственно, нет ничего плохого. Вопрос в том, должен ли рядовой лоровец воспринимать цели корпораций как свои собственные?

Наиболее живучи те свободные программы, за которые платят корпорации. Поэтому надо или подстраиваться под их интересы, или искать способы переубеждать их. Или быть маргиналом — тоже вариант.

question4 ★★★★★
()
Ответ на: комментарий от svinorezka

алгол тоже вроде хороший был. Но кто его использует кроме кучки энтузиастов? Лекция для молодежи ведь, вот и надо показать современные тенденции в программировании, а не совершенный эбонитовый шарик, тщательно выпиливаемый 30 лет натфилем.

Bobby_
()
Ответ на: комментарий от DELIRIUM

он пишет софт для моделирования ядерных реакторов. Так вот, он пишет на компонентном паскале (он основан на обероне и фактически является его подмножеством), по его словам он запускает свои расчёты на кластерах и некоторые длятся пару лет.

"- Доктор, мой сосед говорит, что он [...]" (ц)

tailgunner ★★★★★
()
Ответ на: комментарий от Napilnik

А если хочется переведённого API — просто пишешь обёртки, которые внутри вызывают нужные переменные и процедуры. Ненамного сложнее, только добавлять пробелы перед вставкой в Google Translate и убирать их по окончании. Можно даже sed-ом ­— хоть с подчёркиваниями, хоть CamelCase.

question4 ★★★★★
()
Ответ на: комментарий от Bobby_

алгол тоже вроде хороший был. Но кто его использует кроме кучки энтузиастов?

Говорят, шелл на него очень похож :)

question4 ★★★★★
()

Погодите, но ведь Оберон это король эльфов и фей. При чем тут программирование.

anonymous
()
Ответ на: комментарий от question4

Врут. Шелл совершенно не похож на Алгол. if fi - единственное общее.

tailgunner ★★★★★
()
Ответ на: комментарий от question4

А если хочется переведённого API — просто пишешь обёртки, которые внутри вызывают нужные переменные и процедуры.

Тебе ещё раз говорят, там ООП, с наследованиями и полями, а значит английские названия расположены не на плоскости, на которую можно постелить клеёнку с правильными надписями, а в 3Д. Всё это дерево, у которого на листочках не те надписи, оборачивать надо.

Napilnik ★★★★★
()
Ответ на: комментарий от Bobby_

писал бы на плюсах, все посчиталось за пару дней

Пока писал бы, забыл о чём расчёты - весь мозг загрузился справочниками и трюками ЯП, а подробного бумажного плана программы то нет.

Napilnik ★★★★★
()

Прошли времена Паскалей, Оберонов, профессоров, щас рулят прыщавые Javascript Senior Devops Architect из 7го класса школы.

Alve ★★★★★
()
Последнее исправление: Alve (всего исправлений: 1)
Ответ на: комментарий от WatchCat

Это наследие ассемблера вообще не нужно.
Программисты которые не умеют писать на языках высокого уровня без goto не ту выбрали профессию.

Весь прикладной софт должен быть на жабе или пистоне и, как сматрфончики, требовать смены железа раз в год-два!

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

если он всю жизнь занимался этим, мог бы язык выучить в совершенстве. Компилятор и библиотеки с++ будут актуальны достаточно долго, а с малоиспользуемыми языками могут быть проблемы. собери на каком-нибудь делфи программу под виндовс 10, может получится, а может и нет.

Bobby_
()
Ответ на: комментарий от DELIRIUM

по его словам он запускает свои расчёты на кластерах и некоторые длятся пару лет

Неужели настолько медленно считает!

imul ★★★★★
()
Ответ на: комментарий от Napilnik

Не 3D, а всего лишь 1 уровень для каждого класса. Даже деревом называть несерьёзно. Если есть заголовки, процесс легко автоматизируется, только успевай подставлять стринги :)

question4 ★★★★★
()
Ответ на: комментарий от Bobby_

собери на каком-нибудь делфи программу под виндовс 10, может получится, а может и нет.

Плохой пример. Программы, собранные Дельфи 20 века, более-менее нормально работают под 10, если автор не слишком извращался. Для новейших версий компилятора (Берлина, например) проблем тем более нет. (Не считая изменившегося в 64-битной ОС соглашения о вызовах — приходится переписывать ассемблерные вставки.)

question4 ★★★★★
()
Последнее исправление: question4 (всего исправлений: 1)
Ответ на: комментарий от gentoo1love

https://github.com/Spirit-of-Oberon/ProjectOberon2013 Project Oberon (New Edition 2013) Unofficial Mirro

https://github.com/Spirit-of-Oberon/wirth-personal No description or website provided.

https://github.com/Spirit-of-Oberon/oo2c Optimizing Oberon-2 Compiler In short, OOC is an Internet based project providing an Oberon-2 development platform. It consists of - an optimizing compiler, - a number of source code and compiler related tools, - a set of standard library modules, and - a reference manual.

https://github.com/Spirit-of-Oberon/Juice Juice is a technology for distributing executable content across the World Wide Web http://www.modulaware.com/mdlt69.htm These are the official sources of Juice Release 1.1 for Microsoft Windows.

https://github.com/Spirit-of-Oberon/pOt_riscos Portable Oberon Translator for RISC OS The complete source code for the archimedes port of pOt. Not all the files from the original pot are here, only the ones useful on the archimedes. The original sources are available by anon ftp at: hades.ethz.ch https://e-collection.library.ethz.ch/eserv.php?pid=eth:40959&dsID=eth-409...

https://github.com/Spirit-of-Oberon/pOt Oberon to C translator

https://github.com/Spirit-of-Oberon/coco-pot A port of Coco/R to Portable Oberon Translator

https://github.com/Spirit-of-Oberon/cp-iconv No description or website provided.

https://github.com/Spirit-of-Oberon/ProjectOberonV4 All source texts from book «PROJECT OBERON, The Design of an Operating system and Compiler» N. Wirth, J. Gutknecht ACM Press and Addison-Weseley Publishing Company, 1992 ISBN 0-201-54428-8

https://github.com/Spirit-of-Oberon/POW The Programmers Open Workbench http://www.fim.uni-linz.ac.at/pow/pow.htm Pow! is a software development environment for Microsoft Windows. It allows the generation of native Windows applications using the hybrid object-oriented programming language Oberon-2. Included in the package is an Oberon-2 compiler developed by Robinson Associates.

https://habrahabr.ru/post/258727/ Проект «Оберон 2013»

http://users.cms.caltech.edu/~cs140/140a/Oberon/

http://users.cms.caltech.edu/~cs140/140a/Oberon/general_faq.html Frequently Asked Questions: Miscellany

https://github.com/ilovb/ProjectOberon2013 Project Oberon (New Edition 2013)

https://github.com/ilovb/ProjectOberonV4 All source texts from book «PROJECT OBERON, The Design of an Operating system and Compiler» N. Wirth, J. Gutknecht ACM Press and Addison-Weseley Publishing Company, 1992 ISBN 0-201-54428-8

http://www.projectoberon.com/

http://www.paddedcell.com/projectoberon/wirth/Sources/inner.zip Inner Core Source

http://www.inf.ethz.ch/personal/wirth/ProjectOberon/index.html Project Oberon (New Edition 2013)

http://web.archive.org/web/20060103184459/http://www.oberon.ethz.ch/WirthPubl... 1992 Programming in Oberon steps beyond Pascal and Modula Niklaus Wirth.pdf

vladimirmir2016
()
Ответ на: комментарий от gentoo1love

Много комментариев из серии «не нужно». И такого рода комментарии не нужны в первую очередь. Да похоже у многих «комментаторов» всегда в наличии одно только суждение - «не нужно».

Не один форум не сравнится в этом с ЛОР.

vladimirmir2016
()
Ответ на: комментарий от Bobby_

если он всю жизнь занимался этим, мог бы язык выучить в совершенстве.

Давайте остановим развитие техники и будем дружно плюсы учить, ох и поднимется зарплата у плюсокодеров, если всё их ПО станет обслуживать палки-копалки.

а с малоиспользуемыми языками могут быть проблемы. собери на каком-нибудь делфи программу под виндовс 10, может получится, а может и нет.

Во первых шныри не везде смогут залезть и обнаружить виртуалку с маздай-7. А во вторых, добро пожаловать в бесплатную версию сабжа: откажись от некоторых дельфийских компонентов и всё можно перенести на фпц или лазарус. А если сразу на них писать, то ещё лучше.

Napilnik ★★★★★
()
Ответ на: комментарий от question4

У знакомого делфиста начали возникать проблемы с ней. Он еще лет 10 назад ныл, что весь опыт коту под хвост, срочно надо переквалифицироваться на java.

Bobby_
()
Ответ на: комментарий от question4

Не 3D, а всего лишь 1 уровень для каждого класса. Даже деревом называть несерьёзно.

Если бы. Когда надо добавить классу функционал, обычно наворачивают сверху потомка с добавочными фичами, а на того сверху ещё раз потомка и так много раз - компилятор настырный, он в этом сериале все родственные связи вычислит. Как только тебе от такого класса понадобится что-то не совсем стандартное, добро пожаловать в ИДЕ с продвинутым поисковиком и погрузиться в пучины его родственных связей.

Если есть заголовки, процесс легко автоматизируется, только успевай подставлять стринги :)

Заголовки это пережиток Си архаики, нужный для того, чтобы заставить разработчиков использовать весь непроверенный функционал, что завезли с обновлениями.

Napilnik ★★★★★
()
Ответ на: комментарий от vladimirmir2016

Сейчас работают и на коболе и пл/1, поскольку надо поддерживать код до сих пор работающий на майнфреймах.

Только узок круг этих людей и страшно далеки они от народа. Тут сидят люди программирующие профессионально, т.е. за деньги.

И если они говорят «нинужно», к их мнению стоит прислушаться.

Bobby_
()
Ответ на: комментарий от Bobby_

Однозначно не являюсь фанатом Oberon, ... И согласен, что для WWW, бухгалтерских программ, ... /список огромен/. А вот для систем автоматики, ... такой подход - самое то. Так что с вами в целом согласен, что для многих /и меня в т.ч./ эта тема не столь актуальна. Но из-за этого не выскажу суждение - не надо.

vladimirmir2016
()
Ответ на: комментарий от Bobby_

А вот и нет. Лучше сразу бежать на java, если еще не.

И получить анальную зависимость от её владельцев. Даже на лазарусе есть вещи, которые напрягают, банально отсутствуют некоторые фичи не нужные крупному бизнесу, а в жабе такого счастья должно быть через край.

Napilnik ★★★★★
()
Ответ на: комментарий от Bobby_

Вот если бы обсуждение велось конструктивно /к примеру как ваш комментарий/, то пользы бы много больше было чем услышать - не нужно.

vladimirmir2016
()
Ответ на: комментарий от Napilnik

Там код открыт. Берешь и пилишь нужные тебе фичи. Если не можешь приглашаешь людей, которые могут и пилят они.

Bobby_
()
Ответ на: комментарий от hobbit

Оберон был королём Амбера, а внук его Мерлин, стал программистом.

Ничего удивительного, учитывая что у его прадедушки поехала крыша под старость лет — плохая наследственность.

Virtuos86 ★★★★★
()
Ответ на: комментарий от Napilnik

Можно посмотреть на то, как выглядит код без goto

как будто на языках с goto нельзя писать без использования goto. а если я хочу написать goto? а если мне надо написать goto в этом месте кода?

что-то в последнее время развелось шибко много умников которые рассказывают что делать нельзя, это очень плохо так делать, коллектив осудит, всё такое. а если в этом конкретном случае надо сделать именно так, то что?

не видно корреляции между ограничениями накладываемыми языком и его непопулярностью, нет? может перестать рассказывать как делать надо или не надо и держать их за руки, а дать людям самим решать, что им надо, а что нет? вдруг поможет.

anonymous
()
Ответ на: комментарий от Bobby_

Берешь и пилишь нужные тебе фичи.

После чего java превращается... java превращается... превращается java... превращается в тыкву.

anonymous
()
Ответ на: комментарий от anonymous

как будто на языках с goto нельзя писать без использования goto. а если я хочу написать goto? а если мне надо написать goto в этом месте кода?

а если мне надо тебе гвоздь в голову вбить?

anonymous
()
Ответ на: комментарий от Bobby_

Там код открыт. Берешь и пилишь нужные тебе фичи. Если не можешь приглашаешь людей, которые могут и пилят они.

А потом тебе пришлют обновления и всё сломают. Что-то с браузерами «открытость кода» почти не работает.

Napilnik ★★★★★
()
Ответ на: комментарий от grim

Ну вы же и не рассуждаете о программировании, надеюсь?

Зря надеешся, рассуждаю.
С начала мне тоже непонравилось что goto убрали, но потом я послушал основания и понял что goto действительно не нужен и только создаёт путаницу.

torvn77 ★★★★★
()
Ответ на: комментарий от question4

. Программы, собранные Дельфи 20 века, более-менее нормально работают под 10, если автор не слишком извращался.

В десятку говнообновление завезли, от которого оконные приложения глючат. Вроде зондом слишком часто окно сканируется и надо лишние элементы на форму кидать чтобы это компенсировать.

Napilnik ★★★★★
()
Ответ на: комментарий от Bobby_

У знакомого делфиста начали возникать проблемы с ней. Он еще лет 10 назад ныл, что весь опыт коту под хвост, срочно надо переквалифицироваться на java.

Там другая проблема: Эмбаркадеро прекратило развивать VCL и переходит на FireMonkey. Плюс — FireMonkey кроссплатформенная. Минус — если VCL окончательно выкинут, придётся собирать старые исходники в Лазарусе и надеяться, что LCL достаточно совместим.

question4 ★★★★★
()
Ответ на: комментарий от question4

Это в лазарусных прогах случилось. Всё не доберусь поставить на запасной винт десятку и за время её триального периода _легально_ протестить всё что надо.

Napilnik ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.