OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 16 Апрель, 2024 11:47

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 01:57 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
По ряду причин, язык исходного кода может быть навязан внешними обстоятельствами(заказчик, коллеги, неподдерживаемая напрямую платформа и т.д.), когда ряду разработчиков, предположительно, хотелось бы использовать Oberon. Как минимум, часть трансляторов Oberon в высокоуровневые языки разрабатывались в том числе и для этого. Сформулируйте, пожалуйста, чего не хватает для использования транслятора Oberon в требуемый язык, вместо написания кода непосредственно на языке.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 11:45 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 520
Откуда: Украина, Днепропетровская обл.
Ну, поскольку большинство трансляторов Оберона в другие ЯВУ являются открытыми, то всегда есть очень заманчивый путь дорабатывать транслятор по ходу разработки проекта, собираемого этим самым транслятором.

Мне думается, что выбор более "готового" средства разработки "из коробки" (передача контроля над средством разработки полностью в руки "третьей силы") вызван полным нежеланием в процессе работы над проектом отвлекаться на само средство разработки. И пусть даже развитие средства разработки может быть повёрнуто "третьей силой" "не в ту сторону" — это никого не смущает. Так мы получаем проекты, которые можно собрать, к примеру, только определённой версией Borland C++ Builder.

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

И, опять же, многие разработчики исходят из того, что "где-то в этом готовом средстве разработки фича X уже сделана, и не надо делать снова". Хотя чем крупнее разрабатываемый проект — тем, как правило, больше смысла делать его на средстве разработки, которое сам полностью контролируешь на всех уровнях. Лично моё мнение. А на практике 99% коллективов всё равно выбирают другие средства, готовые. По разным причинам, даже не всегда связанным с навязыванием их менеджерами, далёкими от программирования. Ещё ведь есть аспект "платформы X и программных средств для её поддержки производителем": например, Android и Android SDK. Ну кто переплюнет Android SDK на Обероне? В лучшем случае, можно к нему пристыковаться, но кривенько, самопально. Вот и получается, что у нас чаще проекты встраиваются в готовую инфраструктуру, поэтому для них разрабатывать на заточенных под эти инфраструктуры средствах — просто тупо проще для программистов и экономически выгоднее для менеджеров. Вот когда каждый второй проект будет мало завязан на интеграции в существующие инфраструктуры — тогда может будет больше смысла проектировать всё с нуля на Обероне. Да и то — делать это именно на Обероне смогут (и захотят) только те программисты, кто понимает достоинства Оберона. Или те, у кого к Оберону (Паскалю) привязки из ВУЗа или школы.

Ещё судя по моему пиару среды разработки XDev на форуме ZX-PK.ru, люди попросту не понимают зачем транслировать Оберон в Си, если можно сразу писать на Си. И таких людей не так уж и мало. И объяснить им что-то чрезвычайно сложно. В процессе такого диалога всё обычно скатывается в срачики "Паскаль vs Си", "Страуструп vs Вирт", "реальное программирование в продакшене" vs "академическое теоретизирование" и т.п. В конце концов, это надоедает. Надо с младых ногтей оберонщиков формировать. И тогда пусть мы даже не получим широкое использование самого Оберона, но такие программисты будут всё равно тяготеть к более правильным инструментам разработки, что в целом благоприятно скажется на отрасли.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 13:13 

Зарегистрирован: Пятница, 13 Март, 2009 16:36
Сообщения: 987
Откуда: Казань
Олег правильно сказал, что есть среды, которые уже являются "родными" для какой-то среды. И их сложно превзойти в плане поддерживаемых возможностей. И про то, что некоторые не понимают, почему сразу не разрабатывать в Си. По сути, трансляция одного языка в другой язык заставляет знать программистов сразу два языка, что увеличивает сложность. Поэтому многие думают, зачем мне разбираться с особенностями двух языков, если достаточно разобраться с одним языком, без которого все равно нельзя обойтись. Лично мне примерно по этим же причинам не нравятся трансляторы одного языка в другой. Я думаю, что если нравится Оберон, то надо на нем создавать программы, а не транслировать в какое-то промежуточное представление, ведь это тоже ухудшает какие-то параметры, например, на чистом Оберона можно сделать Mark&Sweep сборщик мусора, а при трансляции в Си надо уже использовать другой сборщик мусора, который получится использовать из Си.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 19:40 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Коллеги, Вы, на мой взгляд, отвечаете совсем не на тот вопрос.
1. Если люди хотят использовать X, то естественно, они не захотят использовать транслятор Oberon в X. Но я спрашивал не об этом.
2. Если программирование сводится, в основном, к связке готовых решений(SDK, framework, rich library), то, естественно, бессмысленно связываться с чем-то кроме предложенного, так как роль самого языка кода уже невелика. Но я спрашивал и не об этом.

Вопрос именно к тем, кто хочет программировать на Oberon, но должен отдать код на другом языке или с возможностью преобразования в другой язык. Чего не хватает в трансляторах или других инструментах?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 19:54 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Rifat писал(а):
Я думаю, что если нравится Оберон, то надо на нем создавать программы, а не транслировать в какое-то промежуточное представление, ведь это тоже ухудшает какие-то параметры, например, на чистом Оберона можно сделать Mark&Sweep сборщик мусора, а при трансляции в Си надо уже использовать другой сборщик мусора, который получится использовать из Си.

1. С Mark&Sweep сборщиком мусора в С нет никаких проблем. Или я что-то путаю?
2. Правильно ли я понимаю, что если бы понадобилось предоставить написанный код на C, Вы бы предпочли написать его на C, а не сгенерировать из Oberon, потому что код Oberon->C->машина будет в чём-то хуже, чем Oberon->машина?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 20:00 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Oleg N. Cher писал(а):
Мне удалось использовать Ofront+ на двух последних местах работы
Можно подробнее? Было требование предоставить код на C, которое удалось удовлетворить таким способом?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 20:44 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 520
Откуда: Украина, Днепропетровская обл.
Comdiv писал(а):
Чего не хватает в трансляторах или других инструментах?
Ну я как раз и ответил, но в общем. Константин, если Вам интересно чего Вы можете нафичить в Востоке, чтобы им больше пользовались, то мой ответ как раз об этом. Ничего. Фичить будут сами юзеры, если будут. Так что ответ такой: в трансляторах для тех, кто сейчас ими пользуется, всего хватает.

Кстати, транслятор в ЯВУ обслуживать на несколько порядков легче, чем в нативный код. Это тоже немаловажно. Под первое хватит ремесленника типа меня. Но под второе нужен специально обученный (и желательно талантливый) человек с особым складом ума.

Comdiv писал(а):
Можно подробнее? Было требование предоставить код на C, которое удалось удовлетворить таким способом?
Неа. В случае 1) было просто требование решить задачу пофиг на чём. А в случае 2) задача уже была реализована на КП, надо было только перевести её на 64-битность. Тут-то и пригодилась поддержка КП в Ofront+. К счастью, тащить весь ББ не пришлось. Ofront+ пока не умеет генерировать мета-информацию для модулей в духе BlackBox или CPfront. Я над этим ещё думаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 20:53 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Comdiv писал(а):
Вопрос именно к тем, кто хочет программировать на Oberon, но должен отдать код на другом языке или с возможностью преобразования в другой язык. Чего не хватает в трансляторах или других инструментах?

Не хватет транслятора X -> Oberon.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 22:28 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Oleg N. Cher писал(а):
Comdiv писал(а):
Чего не хватает в трансляторах или других инструментах?
Ну я как раз и ответил, но в общем.
А мне не надо в общем и не надо за других.

Oleg N. Cher писал(а):
Константин, если Вам интересно чего Вы можете нафичить в Востоке, чтобы им больше пользовались, то мой ответ как раз об этом. Ничего. Фичить будут сами юзеры, если будут.
Иногда сигара, это только сигара. А конкретный вопрос - это только конкретный вопрос.

Oleg N. Cher писал(а):
Так что ответ такой: в трансляторах для тех, кто сейчас ими пользуется, всего хватает.
Конечно, нет. Вы же используете другие языки для работы? Значит, чего-то не хватает. И я, например, использую, трансляторы, но не сказал бы, что мне всего хватает.

Цитата:
транслятор в ЯВУ обслуживать на несколько порядков легче, чем в нативный код. Это тоже немаловажно. Под первое хватит ремесленника типа меня. Но под второе нужен специально обученный (и желательно талантливый) человек с особым складом ума.
Вы переоцениваете задачу и недооцениваете себя. Спросим у независимого эксперта - adimetrius, что скажете о порядке сложности КП->JS и КП->AMD64?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 22:31 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Trurl писал(а):
Не хватает транслятора X -> Oberon.
Какой именно X? Правильно ли я понимаю, что речь о проектах с поддержкой, где нет концентрированного нового кода, а есть только размазанный по уже созданному?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 23:50 
Аватара пользователя

Зарегистрирован: Суббота, 16 Февраль, 2008 02:47
Сообщения: 660
Я не эксперт (пока:). JS-синтезатор - это один модуль; АМД-синтезатор - с полдюжины.
Субъективно - JS занял 2 месяца, АМД уже 8. Конечно, в АМД и задач гораздо больше и проработка их серьезнее, в т.ч. тестовая инфраструктура 1-1,5 мес. Полтора-два месяца ушли на борьбу с PE и ELF. Но в целом мое ощущение - в АМД синтезатор объемнее => декомпозиция на много модулей, т.е. сложнее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Понедельник, 15 Март, 2021 23:59 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Если не эксперт, тем лучше в контексте вопроса. То есть, разница не на 2-3 порядка(в 100-1000 раз), а в 4-8 раза, то есть, на те же 2-3 порядка, но в двоичной системе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 09:42 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 520
Откуда: Украина, Днепропетровская обл.
Comdiv писал(а):
А конкретный вопрос - это только конкретный вопрос.
Ну, я так понял Ваш вопрос: "чего бы мне такого интересненького запилить, чтобы привлечь к Востоку новых юзеров?". Но для начала неплохо бы их привлечь вообще к Оберон-технологиям и к Оберону-07, в частности.

Comdiv писал(а):
Вы же используете другие языки для работы? Значит, чего-то не хватает. И я, например, использую, трансляторы, но не сказал бы, что мне всего хватает.
Для хобби-проектов, притом довольно разношёрстных, средств Ofront'а+ более чем достаточно. А чего нет, но оно вписывается в существующий набор идей, то я доделываю на коленке, и уже много чего сделано.

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

Да Вы и сами всё это знаете. Но это не из-за недостатков фич в языке или даже в трансляторе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 13:51 
Аватара пользователя

Зарегистрирован: Суббота, 16 Февраль, 2008 02:47
Сообщения: 660
Лично для меня не так страшен Х, как его экосистема. После доклада Д.В.Дагаева хотел опробовать одну идею, для нее нужен некий эмскриптен. Вынудили скачать 1ГБ неизвестночего. Сделал все по инструкции, и с первого же раза незавелось. И что теперь? Копаться сидеть в ихнем миллиарде байт? Чтобы потом выяснить, что на моей убунте, например, нужно волшебное слово сказать, без которого не заводится? Нет уж, увольте.

Для меня ЖС в определенном смысле - низкоуровневая архитектура, поскольку "ниже" ЖС не приходится спускаться, это браузер делает прозрачно для меня. В этом смысле КП->ЖС это не трансляция в промежуточную форму, которую нужно еще потом куда-то транслировать, а это "прямой" транслятор; как и КП->АМД64.

И еще, чаще всего же авторы экосистемы Х - с марсианскими мозгами. Вот например ELF. Есть спецификация, она чего-то там позволяет (уже не помню детали). А есть реализация, она этого не позволяет, спотыкается. Я спрашиваю (спецов на стаковерфлоу): как же так?! А мне в ответ: ты чо, марсианин? спецификация - это одно, а загрузчик - это совсем другое; авторы загрузчика не обязаны исполнять требования спецификации.

И это - риск, в т.ч. бизнес-риск: поменяют что-то в экосистеме Х - это потянет изменения в трансляторе Оберон->Х.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 14:57 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 588
Откуда: Москва
adimetrius писал(а):
После доклада Д.В.Дагаева хотел опробовать одну идею, для нее нужен некий эмскриптен. Вынудили скачать 1ГБ неизвестночего.

"Заметьте, не я это предложил" :wink:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 16:49 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Oleg N. Cher писал(а):
Comdiv писал(а):
А конкретный вопрос - это только конкретный вопрос.
Ну, я так понял Ваш вопрос:
Когда пытаются читать между строк, легко прийти к выдумке, и получается лишь своеобразное зеркало :) . Конструктивный вопрос был задан в обобщённом виде не просто так. А навеян он был неконструктивными мотивами во многих темах, которые выглядят как "колемся, плачем, но продолжаем кушать кактус".

Что касается Востока, раз уж Вы затронули эту тему, то он никогда не был ответом на вопрос, чего не мне не хватает в Обероне из mainstream, а был ответом, хотя и не ограничивался им в единстве ближних и дальних целей, на противоположный вопрос - чего мне не хватает в mainstream, из-за чего нужно использовать Обероно-подобный язык. Здесь подобие используется в широком смысле, т.е. не сводится к пресловутым BEGIN END. Это было заявлено прямым текстом в первом же сообщении соответствующего блога.

Цитата:
Для хобби-проектов
Хобби не интересны, потому что они легко подгоняются под нужные критерии, и в них любую деятельность можно обосновать тем, что мне так нравится.

Цитата:
А не хватает: нормальной библиотеки для создания GUI-программ, желательно с возможностью конструировать интерфейс мышкой; поддержки самых нужных платформ, в частности, мобильных; хорошего пошагового отладчика; удобного IDE в стиле Delphi, где всё из коробки, чтобы проекты собирались одним нажатием кнопки Build; не хватает простого и мощного веб-фреймворка, на котором легко клепать сайты; не хватает целой кучи нормальных библиотек, из-за чего приходится припиливаться к сишным и прочим.

Да Вы и сами всё это знаете. Но это не из-за недостатков фич в языке или даже в трансляторе.
Я же просил, что не надо писать "в общем" и за других :) . Подход "да вы и сами знаете", в котором потребности приписываются другим людям, прямо противоположен подходу "давайте спросим и предложим задуматься". И то, что знаю лично я, противоположно этому тексту, потому что тут, на мой взгляд, перепутаны причина и следствие. Но главное, нет ответа на заданный вопрос, так как всем всё равно, что за IDE есть для чего угодно, если есть требование по той или иной причине создать код на другом чём угодно. Ответ, что сначала все должны захотеть программировать на Oberon - это тоже ответ не на тот вопрос.


Последний раз редактировалось Comdiv Вторник, 16 Март, 2021 17:41, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 17:01 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
adimetrius писал(а):
Для меня ЖС в определенном смысле - низкоуровневая архитектура
ЖС - это и есть частный случай X. Кто-то хотел X, они его получили.

adimetrius писал(а):
И еще, чаще всего же авторы экосистемы Х - с марсианскими мозгами
О том и вопрос к людям. Зачем вы колетесь, но используете X, если хотите Oberon? Чего конкретно не хватает?

Цитата:
Есть спецификация, она чего-то там позволяет (уже не помню детали). А есть реализация, она этого не позволяет, спотыкается
Прям как везде, включая инфраструктуру Oberon.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 18:51 

Зарегистрирован: Пятница, 13 Март, 2009 16:36
Сообщения: 987
Откуда: Казань
Если один думает, что причина одна, а следствие другое, а другой думает наоборот, то, скорее всего, это замкнутый круг. Мало людей использует Оберон из-за того, что нет всего перечисленного, а всего перечисленного нет, потому что мало людей использует Оберон.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 19:39 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1449
Откуда: Киев
Дело в том, что "думают" и "так оно и есть" - это разные вещи.
Таких примеров несколько, но главным я считаю следующий Oberon, у которого была и mainstream IDE - MS Visual Studio, был и прямой доступ к широчайшему mainstream framework вместе с сателитами - .NET, и проникновение "must have" возможностей в язык - это Zonnon. Кстати, где он?

Знаю, что некоторые разработчики хотят сделать или уже делают ещё IDE для Oberon, и это хорошо. Стоило бы даже обсудить это в отдельной теме. Но! Если это делается с целью сделать то, из-за чего люди, наконец, начнут пользоваться Oberon массово, то не стоит - это не поможет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Транслятор Oberon->X вместо X
СообщениеДобавлено: Вторник, 16 Март, 2021 21:48 

Зарегистрирован: Пятница, 13 Март, 2009 16:36
Сообщения: 987
Откуда: Казань
Visual Studio с Обероном я не видел. И думаю, что мало кто видел, скорее всего, это был какой-то эксперимент, какая-нибудь альфа или бета версия. Zonnon изначально был академической разработкой.

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

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB