OberonCore https://forum.oberoncore.ru/ |
|
Общие мысли о языках программирования. https://forum.oberoncore.ru/viewtopic.php?f=27&t=6147 |
Страница 2 из 3 |
Автор: | albobin [ Пятница, 27 Октябрь, 2017 11:21 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Wlad писал(а): albobin писал(а): То есть устройства всё-таки проектирует, а студентов на пенсии уже не учит. Я понимаю, что русский язык многогранен, богат и гибок - до чрезвычайности... Но вы бы, всё-таки, потренировались в выражении однозначных описаний категорий объектов и отношений между ними. Между ними - это между описаниями, между категориями, или между объектами ? |
Автор: | Илья Ермаков [ Пятница, 27 Октябрь, 2017 15:06 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Rifat писал(а): Вообще, мне кажется, что Oberon должен стремиться в нишу, которую занимают такие языки как Ada и Eiffel. В принципе, да. Но тем самым нужно пробить и стенку в "нишу Ады", а потом стенку в плане расширения "ниши Ады" до более широких применений. Вон, уж Боинг переписывает на плюсы с Ады. |
Автор: | Info21 [ Пятница, 27 Октябрь, 2017 15:36 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Илья Ермаков писал(а): Вон, уж Боинг переписывает на плюсы с Ады. Впечатление, что даже если самолёты начнут реально падать, это мозги вправит только в эволюционном смысле -- кровавой отбраковкой негодных аллелей.
|
Автор: | Rifat [ Пятница, 27 Октябрь, 2017 18:29 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Илья Ермаков писал(а): Rifat писал(а): Вообще, мне кажется, что Oberon должен стремиться в нишу, которую занимают такие языки как Ada и Eiffel. В принципе, да. Но тем самым нужно пробить и стенку в "нишу Ады", а потом стенку в плане расширения "ниши Ады" до более широких применений. Вон, уж Боинг переписывает на плюсы с Ады. Если верить картинке Вложение: graph[1].gif [ 4.22 КБ | Просмотров: 7828 ] то, в принципе, Боинг правильно поступает: переписывает систему на более простом языке Вообще, Ада и С++ оба переусложненные языки. Но для Ады существуют системы спецификации и верификации, такие как Anna и Spark. А вот для Оберона аналога пока нет, поэтому можно считать, что в этом Обероны проигрывают Аде. |
Автор: | Wlad [ Пятница, 27 Октябрь, 2017 18:30 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
albobin писал(а): Wlad писал(а): albobin писал(а): То есть устройства всё-таки проектирует, а студентов на пенсии уже не учит. Я понимаю, что русский язык многогранен, богат и гибок - до чрезвычайности... Но вы бы, всё-таки, потренировались в выражении однозначных описаний категорий объектов и отношений между ними. Между ними - это между описаниями, между категориями, или между объектами ? Ой, да у вас там совсем всё как-то тяжело. Сочувствую. |
Автор: | Wlad [ Пятница, 27 Октябрь, 2017 18:31 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Илья Ермаков писал(а): Вон, уж Боинг переписывает на плюсы с Ады. Увы, но ужЕ НЕ переписывает.... а, может, и - не "увы"... |
Автор: | Wlad [ Пятница, 27 Октябрь, 2017 18:37 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Rifat писал(а): ... можно считать, что в этом Обероны проигрывают Аде. Обероны проигрывают Аде не только в этом. Нет стандартизации формальной спецификации понятия "задача". Нет формального механизма описания взаимодействия между задачами. С типами в Аде более щепетильная работа. Выведены на уровень синтаксиса языка механизмы доступа к метаинформации объектов программы. Тестировочные и верификационные всякие вещи присутствуют. ... понятное дело, это не мешает народу "творить чудеса" в ПО для вундервафель, лишая бравых янки кислорода в стратосфере и цирка при пересечении линии дат. |
Автор: | PSV100 [ Пятница, 27 Октябрь, 2017 18:59 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Rifat писал(а): Вообще, мне кажется, что Oberon должен стремиться в нишу, которую занимают такие языки как Ada и Eiffel. Илья Ермаков писал(а): В принципе, да. Но тем самым нужно пробить и стенку в "нишу Ады", а потом стенку в плане расширения "ниши Ады" до более широких применений. Только вот такие стены пробивать не просто, ведь там "безопасность" не только на принципах предельного минимализма. Элементарный пример -- "void safety" в Eiffel-е (безопасность на предмет nil-ссылок, включая и для "дженериков") -- краткое введение в переводе: https://www.opennet.ru/soft/VoidSafety.pdf |
Автор: | albobin [ Суббота, 28 Октябрь, 2017 22:22 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Wlad писал(а): Ой, да у вас там совсем всё как-то тяжело. Сочувствую. Препятствовать не буду.
|
Автор: | Илья Ермаков [ Воскресенье, 29 Октябрь, 2017 20:54 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Rifat писал(а): то, в принципе, Боинг правильно поступает: переписывает систему на более простом языке Вообще, Ада и С++ оба переусложненные языки. Если для нижних веток (степень минимализма) количество лексем - объективный показатель (при всей его критике), то для верхних уже нет. С. И. Рыбин (ВМиК МГУ, вед. разр. Ada Core, член комитета Ады от РФ) как-то в общении в 2005-м говорил: "Если сложность С++ - это сложность сундука со свалкой средств, то сложность Ады - сложность единого отлаженного механизма". Семантика Ады на порядок прямее С++, возможностей породить какие-то выкрутасы 10-ю способами особо нет, а уж тупых дыр в типобезопасности и т.п. - без сравнения... А всяких спец. слов-модификаторов там да, побольше, потому что хорошо стандартизированы до переносимости всякие особенности форматов данных и т.п. Что и даёт объём лексики. |
Автор: | Илья Ермаков [ Воскресенье, 29 Октябрь, 2017 20:58 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Wlad писал(а): Илья Ермаков писал(а): Вон, уж Боинг переписывает на плюсы с Ады. Увы, но ужЕ НЕ переписывает.... а, может, и - не "увы"... В смысле? Уже переписали? Или отказались от затеи? |
Автор: | Илья Ермаков [ Воскресенье, 29 Октябрь, 2017 21:04 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
PSV100 писал(а): Rifat писал(а): Только вот такие стены пробивать не просто, ведь там "безопасность" не только на принципах предельного минимализма. Элементарный пример -- "void safety" в Eiffel-е (безопасность на предмет nil-ссылок, включая и для "дженериков") -- краткое введение в переводе: Обероны проигрывают Аде не только в этом. Нет стандартизации формальной спецификации понятия "задача". Нет формального механизма описания взаимодействия между задачами. С типами в Аде более щепетильная работа. Выведены на уровень синтаксиса языка механизмы доступа к метаинформации объектов программы. Тестировочные и верификационные всякие вещи присутствуют. Эта инфраструктура, конечно, важна. Только надо искать способ всё это вводить компонентно. Библиотеками, ООП-каркасами, компонентами над синтаксическим деревом AST. (Конечно, классный пример Ады - стандартизированный интерфейс к AST - Ada ASIS). Большие языки = непозволительно долгий выход в практику, привязка к малому числу чужик реализаций, болезненность любых ошибок (которые не исправить). Нужен другой путь. Кстати, подумайте, насколько привлекательна возможность иметь кросс-совместимость таких инструментальных модулей. Rifat сделает свою великую мечту - верификатор, над стандартизированным AST, и будет этот верификатор приложим к любой реализации языка, которая это AST имеет. Ну и т.п. |
Автор: | Rifat [ Понедельник, 30 Октябрь, 2017 09:53 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Илья Ермаков писал(а): Только надо искать способ всё это вводить компонентно. Библиотеками, ООП-каркасами, компонентами над синтаксическим деревом AST. (Конечно, классный пример Ады - стандартизированный интерфейс к AST - Ada ASIS). В принципе, конечно, всё возможно. Можно и общий AST сделать для нескольких языков, только какую задачу это позволит решить? К тому же, хотя Oberon-2, Component Pascal и Oberon-07 похожи, есть и различия. Например, в Oberon-07 нельзя делать несколько RETURN из функции и нельзя использовать LOOP c EXIT. А эти возможности из Oberon-2 и Component Pascal затрудняют некоторые вещи. |
Автор: | Wlad [ Понедельник, 30 Октябрь, 2017 16:37 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
albobin писал(а): Wlad писал(а): Ой, да у вас там совсем всё как-то тяжело. Сочувствую. Препятствовать не буду.То есть, вы ещё не раз дадите повод?... |
Автор: | Wlad [ Понедельник, 30 Октябрь, 2017 16:54 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Илья Ермаков писал(а): Wlad писал(а): Илья Ермаков писал(а): Вон, уж Боинг переписывает на плюсы с Ады. Увы, но ужЕ НЕ переписывает.... а, может, и - не "увы"... Уже переписали? Или отказались от затеи? Практически везде всех задавливает связка Си/Си++. Особенно - во встраиваемых системах. Как (в|В)ы знаете, я к этой отрасли непосредственное отношение имел до недавнего времени (до Рецидива). Так вот там всякие разговоры на счёт "а не написать ли нам эту (под)систему на Аде" пресекаются в зародыше. Я вообще сильно удивлён, что тот же AdaCore ещё как-то существует. Мне интересны источники е(ё|го) финансирования. Я знаю, что есть коллективы, пишущие на Аде для Евробаса, но они ни на какие конткты, ниже определённого уровня, просто не идут. Всё перефутболивается наверх, а там, наверху, первый же вопрос - о величине нашего кошелька. Они ж - не просто так предоставляют кучу средств для разработки (пусть и не привычных для тех, кто привык к миру С во встраиваемых системах), но пытаются заключить контракты таким образом, что бы и самим в разработке поучаствовать, и денежку за это получить. А какая контора, кроме очень крупных, это может себе позволить? К тому же, там всегда заходит речь о дальнейших отчислениях (как процентик с продаж, так и, разного рода, регулярные выплаты). К тому же работает и всё тот же "фактор боссиков от ИТ". Думаю, что не нужно объяснять, чем карьеристы в ИТ отличаются от профессиональных разработчиков. К тому же и сами разработчики, проработав "в поле" не один десяток лет, в большинстве своём "шило на мыло" менять не хотят. Ада-разработчики - штучный товар. И они, в свою очередь, кучкуются по определённым фирмам и куда-то не переходят. Никого математические закарючки формальных обоснований большей надёжности Оберонов или Ады не волнуют. У начальства (да и у программистов) вера в то, что талантливый программер и на Си "всё, как надо" налабает. Во времена оны, когда ещё с ETHZ был связан, переписывая для них декодер одного из звуковых стандартов, взял за основу сишную либу. Повылазила хренова куча багов (причём, в коде, который уже как бы не первый год работает во всяких известных музыкальных и видеопроигрывателях). Написал об этом автору. В ответ, после долгого молчания и не одного повтора-напоминания, получил лишь недоумённо-обидчивые вопросы. Автор продолжает заниматься библиотекой и код с лопухами так и переходит из версии в версию. Работая в авиакосмосе, где только мог, чаще на ПиСишной стороне, переводил всё на Дельфи и CodeTyphon. Ну, потому, что - просто надёжнее и проще разработка и проекты получаются. Демонстрировал не раз... Но - как об стенку горохом. А что уж про BlackBox говорить?! Как на чумного или придурка начинают смотреть... |
Автор: | albobin [ Понедельник, 30 Октябрь, 2017 17:16 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Wlad писал(а): То есть, вы ещё не раз дадите повод?... А вы уверены, что предоставите убедительный довод наличия повода? |
Автор: | Wlad [ Понедельник, 30 Октябрь, 2017 17:57 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
albobin писал(а): Wlad писал(а): То есть, вы ещё не раз дадите повод?... А вы уверены, что предоставите убедительный довод наличия повода? Достаточно, что есть вывод. |
Автор: | albobin [ Понедельник, 30 Октябрь, 2017 18:10 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Wlad писал(а): albobin писал(а): Wlad писал(а): То есть, вы ещё не раз дадите повод?... А вы уверены, что предоставите убедительный довод наличия повода? Достаточно, что есть вывод. Соглашусь только с первой частью вашей фразы и то, вырывая её из контекста. Действительно достаточно, здесь нам не чат. |
Автор: | Info21 [ Понедельник, 30 Октябрь, 2017 18:25 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Wlad писал(а): Думаю, что не нужно объяснять, чем карьеристы в ИТ отличаются от профессиональных разработчиков. Пожалуйста, скажите явно, чем они отличаются.
|
Автор: | PSV100 [ Вторник, 31 Октябрь, 2017 20:43 ] |
Заголовок сообщения: | Re: Общие мысли о языках программирования. |
Rifat писал(а): Илья Ермаков писал(а): Только надо искать способ всё это вводить компонентно. Библиотеками, ООП-каркасами, компонентами над синтаксическим деревом AST. (Конечно, классный пример Ады - стандартизированный интерфейс к AST - Ada ASIS). В принципе, конечно, всё возможно. Можно и общий AST сделать для нескольких языков, только какую задачу это позволит решить? У Scala имеется мощная поддержка AST: http://scalameta.org/ На странице по ссылке есть и примеры применения (где-то внизу). Ну, кроме всяких валидаторов, форматоров и т.п. (а также всяких кодогенераторов для своих технических нужд, к примеру, адаптация кода для сериализации, обработки бинарных данных, ускорения алгоритмов и прочего всякого потребного) любопытен и новый тамошний готовящейся компилятор с поддержкой переделки кода по мотивам: https://d-d.me/talks/scaladays2016-linker/#/ Система AST-макросов позволяет задавать правила по перестройке кода для оптимизации (в том числе). Отчасти выше по ссылке есть демонстрация эффекта "наворотов" -- и дизайн языка/платформы, и архитектура конкретных API позволяют лепить неэффективно (но с другой стороны IT-отрасль, как минимум, должна быть благодарна Sсala за полигон обкатки решений). Но в целом, оптимизации и смежные проблемы всегда неизбежны, и управление AST в некоторой мере позволяет создавать нечто вроде плагинов компилятора без низкоуровневых средств. |
Страница 2 из 3 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |