OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 19 Март, 2024 10:07

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




Начать новую тему Ответить на тему  [ Сообщений: 72 ]  На страницу Пред.  1, 2, 3, 4  След.

Если бы Вы участвовали в разработке нового компилятора, то Вы бы хотели
Создать компилятор с нуля и сделать код открытым 25%  25%  [ 4 ]
Создать компилятор с нуля и сделать код закрытым 6%  6%  [ 1 ]
Дорабатывать существующий компилятор и сделать код открытым 69%  69%  [ 11 ]
Дорабатывать существующий компилятор и сделать код закрытым 0%  0%  [ 0 ]
Всего голосов : 16
Автор Сообщение
СообщениеДобавлено: Четверг, 28 Март, 2019 15:45 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1447
Откуда: Киев
Trurl писал(а):
Но они же не продают компиляторы.
Вы же говорили про заработок, а не про продажи, как одного из способа заработка


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 28 Март, 2019 20:36 
Аватара пользователя

Зарегистрирован: Воскресенье, 09 Декабрь, 2018 15:14
Сообщения: 113
Откуда: Equestria
Rifat писал(а):
Закрытые исходники нужны для того, чтобы можно было окупить вложенные ресурсы.
Поверю в доход от продаж суппорта и бинарей, но каким магическим образом закрытый код материализует деньги?
Rifat писал(а):
С другой стороны есть якобы открытые компиляторы, такие как GCC, где 5 миллионов строк кода и LLVM где 1,6 миллионов строк кода. А по сути эти исходники закрыты, так как во многом не документированы достаточно полно (Движение за открытую проектную документацию).
Открытые. Каждый волен исследовать и изменять код.
И я абсолютно уверен что разработчики того же gcc не откажут в пояснении непонятных моментов в кишках gcc.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 01:56 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 518
Откуда: Украина, Днепропетровская обл.
Отличный опрос! Многие оберонщики не удовлетворены качеством доступных имеющихся Оберон-компиляторов. Есть "эталонные", самый Оберон-мэнйстрим, например, BlackBox. Но это совсем не значит, что все готовы пользоваться только им. У него свои ограничения, в частности, по поддержке разных архитектур. Чуть-чуть спасает то, что на платформах x64 можно запускать код от x86.

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

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

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

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

P.S. Нам бы также что-то подобное для Оберона: http://www.drkb.ru


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 09:44 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Взять VSCode, прикрутить к нему CLang, дописать плагин к VSCode для Оберона,
дописать к нему конвертер из Оберона в CLang.
Каркас - готов! :) Работает - ВЕЗДЕ.
Основная трудоемкость - писать плагин для Оберона.
Тут надо делать весь нужный учет и контроль.
Остальное пишется быстро - силами студентов 3 курса вполне осиливается за 1-2 семестра.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 11:20 
Аватара пользователя

Зарегистрирован: Воскресенье, 09 Декабрь, 2018 15:14
Сообщения: 113
Откуда: Equestria
Oleg N. Cher писал(а):
И путём наименьшего сопротивления здесь было бы разработать на основе готового фронт-энда новый бэк-энд к LLVM. Работа слишком трудоёмкая, чтобы ею занимались люди на энтузиазме.
Если юзать биткод llvm, а не интерфейс на крестах, то и не так-то и проблемно должно быть. Эффективно генерировать инструкции не надо, распределять регистры не надо. Т. е. не сложнее чем сделать кодогенератор в jvm. А может даже и проще за счёт дополнительной свободы доступа к низкоуровневым штукам.

Единственное что я бы не хотел завязываться на llvm. Это жирный монстр и он постоянно меняется ломая обратную совместимость. Не знаю как это влияет на биткод, но все равно стрёмно.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 11:41 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
SovietPony писал(а):
Единственное что я бы не хотел завязываться на llvm. Это жирный монстр и он постоянно меняется ломая обратную совместимость. Не знаю как это влияет на биткод, но все равно стрёмно.

Забавно, что когда он только появился, говорили, что это хороший, прогрессивный способ избежать высокой сложности GCC.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 11:43 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Валерий Лаптев писал(а):
Каркас - готов! :) Работает - ВЕЗДЕ.

Не-не, это кардинально НЕ ТОТ каркас.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 12:00 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 1488
Откуда: Украина, Киев
Почему LLVM, когда есть своё-родное IR в A2? К тому же не монструозное. И насколько я понял, там уже и Оберон-07 поддерживается. 32/64 бита до кучи, ARM...
Но А2 традиционно испытывает неоднозначный интерес...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 12:23 

Зарегистрирован: Вторник, 26 Январь, 2010 09:31
Сообщения: 717
Откуда: Барнаул
Ярослав Романченко писал(а):
Почему LLVM, когда есть своё-родное IR в A2?
Потому-что в llvm куча готовых бакэндов, оптимизация. Впрочем, можно транслировать Fox-IR в LLVM-IR.
Ярослав Романченко писал(а):
Но А2 традиционно испытывает неоднозначный интерес...
в А2 традиционно всё плохо с документацией, приходится тратить время на низкоуровневое "копание" в коде, чтобы понять, как оно там работает и правильно ли это вообще работает. ну и по понятным причинам уровень сложности несколько выше - для мозга, вмещающего только четыре десятка ключевых слов это практически непосильная задача.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 12:27 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 1488
Откуда: Украина, Киев
Kemet писал(а):
Впрочем, можно транслировать Fox-IR в LLVM-IR.
Я тоже об этом думал. По-идее должно быть не слишком сложно.
Kemet писал(а):
в А2 традиционно всё плохо с документацией, приходится тратить время на низкоуровневое "копание" в коде, чтобы понять, как оно там работает и правильно ли это вообще работает. ну и по понятным причинам уровень сложности несколько выше - для мозга, вмещающего только четыре десятка ключевых слов это практически непосильная задача.
Да, система постоянно развивается. Что-бы быть в курсе изменений, нужно быть постоянно в неё погруженным :D


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 15:11 

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 15:14 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Oleg N. Cher писал(а):
Нам нужна мощная IDE с отладчиком, справочной системой, подсветкой синтаксиса, автодополнением, обновлением через интернет установленных таргетов и библиотек компонентов. Кстати, нам нужно много библиотек.

"Простите, не нам а Вам".


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 15:18 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1447
Откуда: Киев
Валерий Лаптев писал(а):
Остальное пишется быстро - силами студентов 3 курса вполне осиливается за 1-2 семестра.
Это потом можно будет использовать? Кстати, есть какие-нибудь численные результаты по использованию семантического редактора?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 15:23 

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 15:37 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Можно пока фронтэнд написать к Оберону. Пока решим с кодогенерацией уже будет где её опробывать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 16:15 
Аватара пользователя

Зарегистрирован: Вторник, 28 Август, 2007 00:55
Сообщения: 518
Откуда: Украина, Днепропетровская обл.
Про недостатки с монструозностью и постоянной переменчивостью LLVM — соглашусь.

Тогда в качестве бэк-энда с максимальной мультитаргетностью, по-моему, остаётся только трансляция в Си, т.е. Ofront+. Вот его-то и надо присобачивать к VSCode. Опять же, кому нужно.

Ещё слово за Ofront+: есть поддержка Оберона, Оберона-2, готовится для Оберона-07 и КП. Для продакшена такой подход лишним не будет.

Trurl писал(а):
Oleg N. Cher писал(а):
Кстати, нам нужно много библиотек.
"Простите, не нам а Вам".
А, ну я же сказал, что кому и кобыла невеста. А кто-то просто мимо бежал.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 21:54 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Comdiv писал(а):
Валерий Лаптев писал(а):
Остальное пишется быстро - силами студентов 3 курса вполне осиливается за 1-2 семестра.
Это потом можно будет использовать? Кстати, есть какие-нибудь численные результаты по использованию семантического редактора?

В каком смысле - численные?
Мы сравниваем на примере курсовых.
На семантике пишут первую курсовую. Какой-нить тренажер типа работа с восьмеричными числами.
Особых проблем с написанием не наблюдается - пишут на русской лексике практически все.
Кто изучал в школе программирование - тот быстро переходит на англоязычную лексику.
Не все сдают вовремя, но 50-75% - сдают.

Потом у них двухнедельная практика - пишут задачки на полный перебор геометрического толка.
Какие-нить множества точек, среди которых надо выбрать три так, чтобы был треугольник наибольшей площади.
Тоже проблем особых нет.

А вот во 2-м семестре у них на С++ курсовая.
И вот тут начинаются реальные проблемы.
Ибо среда профессиональная, кнопочек - как в кабине самолета приборов.
И язык - с массой подводных камней.
И сама курсовая, конечно, сложнее.
Тут уже вовремя сдают не более 25%. Да еще норовят содрать один у другого.

Мы вот решили на 2 семестр сделать некую переходную среду - англоязычный семантик с переводом в С++.
И чтоб можно было видеть обе программы в редакторе.

А со 2 курса уже полноценно включать С++.
Там тоже 2 курсовых: по ООП, и по алгоритмам.

В общем, пока вывод тот самый, который я в докладе на конференции делал.
У Ермакова слайды должны быть. Или я пришлю.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Март, 2019 22:35 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 1447
Откуда: Киев
Валерий Лаптев писал(а):
В каком смысле - численные?
К примеру, замеряли время выполнения задания для разных сред, и в семантическом редакторе воплощали готовый продукт в среднем в 2.32 раза.
Валерий Лаптев писал(а):
А вот во 2-м семестре у них на С++ курсовая. И вот тут начинаются реальные проблемы.
Но если сравнивали с С++ да ещё и не на сопоставимых задачах, то не интересно


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 01 Апрель, 2019 00:45 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Время сейчас особо не позамеряешь - лабы делаются практически всегда дома. А на занятия приходят, если вопросы появились.
Да и министрВство нам подгаживает - разрешено не выгонять ГОД.
Сильно развращает студентов-середняков. Кому интересно - так и работает нормально.
Но таких - единицы.
А середняки расслабляются неслабо... :))))
Хвосты - потом сдам, не к спеху типа.
Отсюда - проблемы.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 01 Апрель, 2019 15:20 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Trurl писал(а):
Oleg N. Cher писал(а):
Нам нужна мощная IDE с отладчиком, справочной системой, подсветкой синтаксиса, автодополнением, обновлением через интернет установленных таргетов и библиотек компонентов. Кстати, нам нужно много библиотек.
"Простите, не нам а Вам".
Точно не мне.


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

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


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

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


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

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