OberonCore
https://forum.oberoncore.ru/

Свежий язык программирования :)
https://forum.oberoncore.ru/viewtopic.php?f=21&t=459
Страница 3 из 4

Автор:  CheshireCat [ Среда, 26 Сентябрь, 2007 09:21 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Ну хз, мне клички хватает...
...хотя конечно если кому интересно, зовут меня Натаров Владислав Игоревич,
живу в Новосибирске, работаю в отделе АСУ НУЗ Дорожной Клинической Больницы,
мне почти 31 год, учился в НГТУ на 0102 "прикладная математика"...

Отфильтровав все, делаю вывод что обьем полезной информации по
теме КА тут уже стремится к нулю, потому видимо надо завязывать
и ждать чужих впечатлений от Композиты))
да и вообще мне в этом топике не стоило ничего писать о КА))

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

2Владимир Можно наговорить еще много безусловно верных вещей
но они по прежнему будут на другие темы)) Зачем спорить если нет желания
разбираться в том на какую тему говорит оппонент?))
...докатились даже до моего _якобы_ противопоставления математики
и инженерии))

Автор:  Wlad [ Среда, 26 Сентябрь, 2007 22:32 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

CheshireCat писал(а):
Ну хз, мне клички хватает...

Мне, про вас – нет!
А «хз» - это что такое? «Хто знает»?
CheshireCat писал(а):
...хотя конечно если кому интересно, зовут меня Натаров Владислав Игоревич, живу в Новосибирске, работаю в отделе АСУ НУЗ Дорожной Клинической Больницы, мне почти 31 год, учился в НГТУ на 0102 "прикладная математика"...

Ну вот, теперь хоть за сообщениями человека видно и представляешь, а не «хз» кого!
Я – Лось Владимир Витальевич, живу (последнее время) в Харькове, работаю сейчас в ОАО «Авиаконтроль»( http://www.avionika.ua/oao_aviakontrol/about/ ), в отделе разработки ПО. Мне – 37. Учился в ФМШ при НГУ ( http://sscadm.nsu.ru/scripts/wb_fmh.dll ... lass=10-13 ), на физфаке в НГУ ( http://www.phys.nsu.ru/k12/ ) и в ХАИ каф 302 ( http://www.xai.edu.ua/ ).
CheshireCat писал(а):
2Владимир Можно наговорить еще много безусловно верных вещей
но они по прежнему будут на другие темы)) Зачем спорить если нет желания
разбираться в том на какую тему говорит оппонент?))

Тема (вапсчето) посвящена была не «выражению КА» в ЯП... :о)
Тут скорее народ интересует «несколько другие аспекты и понятия», которые нашли своё выражения в Зонноне и Композите...
Как на мой взгляд, так разбор вопроса о выражении и поддержке КА средствами ЯП – слишком «низкоуровневый» для ЯП общего назначения...
Если вас уж очень данная тема интересует, посмотрите на http://softcraft.ru и, с него, по ссылке – на сайт Шалыто по SWITCH-технологии...
CheshireCat писал(а):
...докатились даже до моего _якобы_ противопоставления математики
и инженерии))

Это был всего лишь вывод из вашего пассажа на счёт затрагивания общефилософских вопросов. Создалось впечатление а ля «а чё тут думать – прыгать надо!» Уж извините, Владислав!

Автор:  CheshireCat [ Четверг, 27 Сентябрь, 2007 04:30 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Конечно не выражению КА в языке посвящена. Мне например было интересно
лишь одно - выслушать _конкретные_ аргументы по поводу _необходимости_
грамматик. Пока что ясно лишь что они _достаточны_ для выражения определенных вещей ... Ну или, соответственно, аналогичные веские
аргументы _против_ КА в любом виде... Ни тех ни других пока не было...
Да и не будет как мне кажется...
На мой взгляд, языки Виртовского семейства страдают лишь от одного.
Нежелания (или неумения?) их сторонников _обьяснять_ почему эти языки
именно такие. До тех пор пока для всех их отличий от других языков не
будет доказана _необходимость_ (кроме _достаточности_),
никто на них массово переходить не будет потому что смысла не увидит.
Пока что для стороннего человека они внешне выглядят как то-же самое
да еще и с непривычным синтаксисом в верхнем регистре. А все
обьяснения лишь повторяют раз за разом одно и то-же новичкам
- что Оберон типа просто рулит и все))
По прежнему оставляя многое недоопределенным, без доскональных
практических деталей! Адовцы вон как раз любят свой язык за
конкретность и пытаются обьяснять нужду в каждом из его
наворотов)) Но вот бесплатные реализации все еще не все
несогласованности выдавили да и ресурсов жрет этот Гнат...
Сишники конечно тоже распространили язык просто пользуясь впечатлением
что он типа крут и те кто на нем пишут - тоже круты ( и ведь никто не
говорил что если ты станешь писать на Си то сразу будешь крутым)) но
новички сами себе это додумывали и никто их не разубеждал)) )
Второй раз этот фокус не прокатит)) Оберону нужны реальные
практические преимущества и, главное, - отсутствие любых самых
мелких практических недостатков, барьеров вхождения.
Типа регистра слов. То есть не хватает полноты реализаций.
Потому что Оберон был и будет академическим языком.
Хоть и применяемым некоторыми "особо продвинутыми"...
Но на всех остальных это не отражается они по прежнему ходят
в своих старых разношенных ботинках))
Как с функциональными языками - получается лишь узкая ниша.

ЗЫ... практически про все что Вы тут говорили я давно знаю.
И про Кон-Тики и Про Свитч-технологию с Унимодом...
Вот разве что не слышал что тики _реально_ применяют у нас))...
...не надо упорно называть КА низкоуровневыми, поскольку всегда
можно найти примеры высокоуровневых КА-описаний)).
КА это абстракция ничуть не ниже if-while...
...не было никакого противопоставления математики и инженерии.
было лишь напоминание отличий абстрактного и реального...

Автор:  Илья Ермаков [ Четверг, 27 Сентябрь, 2007 10:39 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Владимир Лось писал(а):
CheshireCat писал(а):
Ну хз, мне клички хватает...

Мне, про вас – нет!
А «хз» - это что такое? «Хто знает»?

"хз" = "хлебозавод"
У нас в Орле часто вместо "хз" так и говорят: "а хлебозавод его!" :-)

Автор:  CheshireCat [ Пятница, 28 Сентябрь, 2007 05:50 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

..."Учёные долго думали - в чём измерять частоту?
Так и не придумали. Вот и пишут - Hz"...

Автор:  CheshireCat [ Понедельник, 29 Октябрь, 2007 05:15 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

на всякий случай хочу еще раз уточнить что под заменой указателей таблицами я ничуть не имел ввиду замену указателей базой данных)). я думал именно про простые таблицы соответствий. такую таблицу можно реализовать НАПРИМЕР просто в виде СПИСКА размазав его по всем участникам заварушки)) к обьекту прицепляется указатель на голову списка "рефереров" а каждому указателю-"рефереру" добавляется указатель на следующего. вот как раз подобную конструкцию уже и можно считать элементом, поскольку она дает возможность корректно разрушить указатель или обьект, оповестив всех заинтересованных лиц. эта конструкция кстати более детерминирована чем сборщик мусора что есть плюс для систем реального времени. но конечно и жрет гораздо больше памяти чем простой (и тем опасный) указатель. кстати потребление памяти неважно если указателей в программе мало и они
связывают лишь крупные обьекты...
само собой возможны и другие варианты реализации таблиц.
главное сохранять идею наличия минимально необходимой для финализации информации о ВСЕХ участниках (счетчики ссылок недостаточно информативны).

Автор:  CheshireCat [ Вторник, 13 Ноябрь, 2007 04:57 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

ну и напоминаю, что для оценки действительных достижений Зоннона и Композиты
желающим нужно сначала полистать книжки по языку Оккам (район 1986 года как
и Оберон-1) а так-же языку Лимбо (1995) для ос Инферно... многое уже было там...

Автор:  Info21 [ Вторник, 13 Ноябрь, 2007 12:51 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

CheshireCat писал(а):
ну и напоминаю, что для оценки действительных достижений Зоннона и Композиты
желающим нужно сначала полистать книжки по языку Оккам (район 1986 года как
и Оберон-1) а так-же языку Лимбо (1995) для ос Инферно... многое уже было там...


Идеи-то были еще раньше.

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

Автор:  Wlad [ Пятница, 16 Ноябрь, 2007 00:56 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

CheshireCat писал(а):
а так-же языку Лимбо (1995) для ос Инферно... многое уже было там...

Авторы Инферно (Лимбо и Rio) - немногие в нашей отрасли, кто чистосердечно признались, что многое взяли из Оберон-систем и идей Вирта, написав и описав, при этом, в чём конкретно, они с Виртом разошлись в подходах и мнениях...

Автор:  CheshireCat [ Среда, 16 Январь, 2008 08:25 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

вообще-то не надо идеализировать Обероновцев - они тоже многое брали у других)) Все верно - надо брать но не отбирать. И не забывать сказать вслух спасибо))

И еще я думаю что обожествление тут Оберона приносит ему только вред.
Боги нужны детям. Взрослым нужны надежные соратники.
Лучше критиковать Оберон и ревизировать его.

Автор:  Илья Ермаков [ Среда, 16 Январь, 2008 10:01 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

А кто спорит? :-)

По поводу "брали" - конечно, брали!
Оберона Вирта можно назвать "синтетическим языком", в том смысле, что он вобрал в себя опыт многих лет/направлений в ИТ. Весьма придирчиво (с точки зрения многих - слишком) отфильтрованный. Взять тот же Соллток/ФП/... - изюминки, экстракты из них заложены в Обероне. Но только самые существенные и в такой форме, чтобы целостно сочетались друг с другом, давали единый базис (вот потому и попытки "ослабить фильтрацию" показывают, что не получается - т.к. иначе бы всё это не связалось)...

Автор:  kreol [ Среда, 16 Январь, 2008 22:43 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Илья Ермаков писал(а):
Взять тот же Соллток/ФП/... - изюминки, экстракты из них заложены в Обероне...

А ну-ка ну-ка, можно чуть-чуть подробнее об экстрактах ФП в Обероне? :)

Автор:  Илья Ермаков [ Среда, 16 Январь, 2008 22:51 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

http://www.inr.ac.ru/~info21/qna.htm#functional
Цитата:
Вопрос. В Оксфорде первым языком программирования берут функциональный язык Haskell, а Оберон ставят лишь вторым. Почему?

Ответ. На "почему?" ответить трудно, т.к. здесь велики субъективные факторы: вспомним о "религиозных войнах" в отношении языков программирования; приверженцы ФЯ там "бойцы" не из последних, а университет вроде Оксфорда не может позволить себе быть как все :)) Но во всяком случае можно выяснить, в каком отношении стоят Оберон/Компонентный Паскаль к ФЯ. Вот суть:
Когда мы пишем a := b + c*d, то не озабачиваемся тем, где будет храниться промежуточный результат умножения c*d. Чистые ФЯ распространяют этот принцип на всю программу, т.е. оставляют (скрытое) присваивание лишь в одном месте — при назначении фактических параметров. Все остальные прелести ФЯ — либо вторичны к этому (например, возможность параллельного вычисления разных фактических аргументов, гарантированно "развязанных" по памяти), либо, строго говоря, не специфичны для ФЯ (как автоматическое распознавание типов, которое, кстати говоря, иногда приводит к тяжелейшим ошибкам; здесь как раз полезна избыточность, вводимая явным описанием типов переменных, — не говоря про большое упрощение компилятора со всеми вытекающими долгосрочными последствиями).
Можно пояснить и так. Строгая статическая типизация Оберонов — это запрет программисту решать, какие данные можно записать в ячейку памяти по такому-то адресу. Запрет следующего уровня, вводимый чистыми ФЯ, — это запрет программисту вообще выбирать ячейку, в которую будет записан результат. (Впрочем, некорректные присваивания в императивных языках имеют аналог и в ФЯ: если у функции, например, два целых параметра, то программист запросто может их перепутать.) Запрет "ручного" управления динамической памятью в Обероне, например, есть запрет ровно той же категории. В эту же сторону работают и настоящая модульность с упрятыванием глобальных переменных. Поэтому можно говорить о синтетической, императивно-функциональной природе Оберона, хотя и с подчеркиванием императивного аспекта (что согласуется с реальными механизмами работы реального "железа").
Но и практически применяемые ФЯ — вынуждены быть синтетическими, с переменными и присваиваниями: состояние окошка на экране, в котором меняется текст при нажатии клавиш — это не что иное как переменная, в которой меняется хранимое значение после каждого нажатия, и избежать этого понятия в такой ситуации невозможно. А введение переменных тянет за собой весь хвост соответствующих проблем. За что же боролись?
Локализуйте присваивания в фабричных функциях в Обероне, собранных в отдельные модули, запретите их во всех других местах, и вот вам ФЯ с полностью динамическими списками без принципиальных изъятий. Контролировать наличие в тексте модуля комбинации литер := не труднее, чем контролировать наличие комбинации литер SYSTEM в списке импорта.
Что касается автоматического распараллеливания, то это такого же уровня проблема, как автоматический синтез или верификация программ: обсуждать автоматическое распараллеливание умножений в a*b+c*d — неинтересно, а в реальных случаях все равно нужно сначала хорошо распараллелить алгоритм головой. Но тогда вся остальная организация распараллеливания в том же Обероне — отнюдь не квантовая гравитация.
Остаются, конечно, различия в "духе синтаксиса" между паскалеобразными языками и ФЯ. Но такие вещи вряд ли возможно оценивать объективно.
Вывод такой, что при обучении профессиональных программистов, несомненно, полезно в качестве обязательного второго взять какой-нибудь ФЯ (тот же Haskell; и еще марковский язык в качестве третьего — заметим попутно, что подавлюящее большинство профессиональных программистов затруднятся ответить, что такое "марковские языки").
Но первое место однозначно должен занять Оберон/Компонентный Паскаль, особенно если мы хотим сохранить связь и единое образовательное пространство как со средней школой, так и с обучением программистов-"непрофессионалов".

Автор:  Борис Рюмшин [ Среда, 16 Январь, 2008 23:56 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Илья Ермаков писал(а):
http://www.inr.ac.ru/~info21/qna.htm#functional

А может в FAQ/Wiki?

Автор:  Илья Ермаков [ Четверг, 17 Январь, 2008 00:55 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Да можно б... Так там уже есть в FAQ сслыка на Информатику-21, и перечень вопрос-ответов этих.

Автор:  Илья Ермаков [ Вторник, 01 Июль, 2008 22:36 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Luc Blaser
A Component-Oriented Language for Pointer-Free Parallel Programming
http://www.isp.uni-luebeck.de/kps07/fil ... laeser.pdf

Автор:  Сергей Губанов [ Четверг, 03 Июль, 2008 12:36 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Илья Ермаков писал(а):
Luc Blaser
A Component-Oriented Language for Pointer-Free Parallel Programming
http://www.isp.uni-luebeck.de/kps07/fil ... laeser.pdf

В этой короткой заметке написано, что подробности изложены в статье:

L. BlÄaser. A Component Language for Structured Parallel Programming, Joint Modular Language Conference (JMLC), Sept. 2006, LNCS Vol. 4228, Springer Verlag, 2006.

Поиск по интернету этой статьи приводит сюда: http://www.springerlink.com/content/jw7051278v114n28/ но там за доступ к ней требуют $25.00 :twisted: :twisted: :twisted:
Нельзя ли её где-нибудь раздобыть бесплатно?

Автор:  Ярослав Романченко [ Четверг, 03 Июль, 2008 14:18 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

L. Bläser. A Component Language for Pointer-Free Concurrent Programming and its Application to Simulation. ETH Diss. 17480, ETH Zürich, Nov. 2007.

Автор:  Сергей Губанов [ Четверг, 03 Июль, 2008 14:26 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Спасибо!

Автор:  Сергей Губанов [ Пятница, 04 Июль, 2008 17:54 ]
Заголовок сообщения:  Re: Свежий язык программирования :)

Всё-таки подробности реализации там не разглашаются.

Меня интересует как конкретно устроен их диспетчер процессов, который может работать с 5'010'000 процессами...

Страница 3 из 4 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/