OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 17 Июнь, 2025 22:14

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




Начать новую тему Ответить на тему  [ Сообщений: 193 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8 ... 10  След.
Автор Сообщение
СообщениеДобавлено: Воскресенье, 09 Март, 2008 11:16 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4722
Откуда: Россия, Орёл
Axcel писал(а):
Т.е. универсальный front-end к gcc. Интересно, какова трудоемкость такого проекта?

Где-то в районе 3-6 человеко-месяцев, в зависимости от того, что в этот front-end нужно впихнуть. :) Только компилятор Оберона можно написать быстрее.


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

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4722
Откуда: Россия, Орёл
Борис Рюмшин писал(а):
Axcel писал(а):
Т.е. универсальный front-end к gcc. Интересно, какова трудоемкость такого проекта?

Где-то в районе 3-6 человеко-месяцев, в зависимости от того, что в этот front-end нужно впихнуть. :) Только компилятор Оберона можно написать быстрее.

Собственно, большая часть времени уйдёт не насам компилятор (это достаточно просто), а на стыковку с gcc.


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

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4722
Откуда: Россия, Орёл
Axcel писал(а):
Edward Ivanov писал(а):
Одно замечание. Компилятор нужен Alek111, а не вам.
Ежу видно, что компилятора не будет, не стоит витать в небесах. Сорри за резкость, но таковы реалии.


Там еще было предложение "скинуться". Для этого необходимо, что бы компилятор был нужен не только Alek111. Вот мы и пытаемся выяснить, что можно было бы сделать.


"Скинуться" - это всё равно достаточно приличная сумма. В принципе, можно "скинуться", разработать на заказ и отдать сообществу в опен-соурс без дальнейшей поддержки...


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

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Борис Рюмшин писал(а):
Поясняю.
... сделать универсальный компилятор, который бы поддерживал все вышеназванные языки, при этом переключаясь между ними при помощи опций. В принципе
Я бы хотел, чтобы Вы или AVC пояснили почему считаете это необходимым. Если не считаете то вопрос исчерпан. А он похоже исчерпан и так.


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

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4722
Откуда: Россия, Орёл
GUEST писал(а):
Борис Рюмшин писал(а):
Поясняю.
... сделать универсальный компилятор, который бы поддерживал все вышеназванные языки, при этом переключаясь между ними при помощи опций. В принципе
Я бы хотел, чтобы Вы или AVC пояснили почему считаете это необходимым. Если не считаете то вопрос исчерпан. А он похоже исчерпан и так.

Необходимым?

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


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

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Борис Рюмшин писал(а):
Необходимым?
Хм... к примеру затем, чтобы убрать пресловутую несовместимость языков... а причин ещё много и других...
Увы это цель Борис, а причины так ни одной и не названо.


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

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Борис Рюмшин писал(а):
Компилятор не только ему одному нужен. Например любители микроконтроллеров давно жаждут...
Любители микроконтроллеров (по крайней мере семейства AVR) давно уже могли взять в руки OO2C, у которого как раз есть версия для AVR. Да и ARM'щики могли бы, наверное, связаться с Виртом с просьбой помочь -- поделиться компилятором, которых у Вирта немерянно... :о)

Борис Рюмшин писал(а):
В принципе, можно "скинуться", разработать на заказ и отдать сообществу в опен-соурс без дальнейшей поддержки...
И кому это будет нужно? Таких неподдерживаемых и ныне забытых компиляторов... Да хоть XDS вспомните...


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

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Борис Рюмшин писал(а):
Борис Рюмшин писал(а):
:) Только компилятор Оберона можно написать быстрее.

Собственно, большая часть времени уйдёт не на сам компилятор (это достаточно просто), а на стыковку с gcc.

Главное понять куда.


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

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4722
Откуда: Россия, Орёл
GUEST писал(а):
Борис Рюмшин писал(а):
Необходимым?
Хм... к примеру затем, чтобы убрать пресловутую несовместимость языков... а причин ещё много и других...
Увы это цель Борис, а причины так ни одной и не названо.

Тогда назовите мне причину делать компилятор только одного языка.


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

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
1.Облегчение создания компилятора.
2.Облегчение документации к нему.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 09 Март, 2008 17:29 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4722
Откуда: Россия, Орёл
GUEST писал(а):
1.Облегчение создания компилятора.
2.Облегчение документации к нему.

Ну... в данном случае 1) - это не аргумент вообще. Сложность многоязыкового компилятора с одной семантической базой возрастёт процентов на 10...

А на счёт второго... оно проистекает из первого, не такая уж сложная документация на сам компилятор получится... Если, конечно, его не изгадить кучей всяческих наворотов...


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

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
В конце концов, можно просто не развивать и не документировать неосновные ветки сразу, но иметь их внутри в "закукленном" виде.


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

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Борис Рюмшин писал(а):
Ну... в данном случае 1) - это не аргумент вообще. Сложность многоязыкового компилятора с одной семантической базой возрастёт процентов на 10...
А на счёт второго... оно проистекает из первого, не такая уж сложная документация на сам компилятор получится... Если, конечно, его не изгадить кучей всяческих наворотов...
Знаете я к какому выводу прихожу. Вы тут уже давно ведете тайную разработку компилятора с общей семантической базой и никому об этом не рассказывали. Причем к написанию документации уже приступили. Это не аргумент поскольку нет предмета спора. По крайней мере у меня нет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 10 Март, 2008 11:03 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Илья Ермаков писал(а):
В конце концов, можно просто не развивать и не документировать неосновные ветки сразу, но иметь их внутри в "закукленном" виде.
Кстати, как привести Ваши с Борисом Рюмшиным оценки трудозатрат к одному знаменателю?


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

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Смотря кто и какими методами будет писать. Моя первая оценка была для случая, если за задачу возьмётся энтузиаст(ы).


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

Зарегистрирован: Суббота, 19 Ноябрь, 2005 15:59
Сообщения: 803
Откуда: Зеленоград
По поводу "общей семантической базы".
Такие компиляторы есть. Пример -- gcc. Основа здесь -- общее промежуточное представление кода, позволяющее использовать фронт-энды для языков с различным синтаксисом и бэк-энды для различных целевых платформ.
В случае языков Оберон, Оберон-2 и Компонентный Паскаль все проще, т.к. в принципе Оберон можно рассматривать как подмножество Оберона-2, а Оберон-2 -- Компонентного Паскаля.
Следовательно, промежуточное представление кода имеет смысл строить в расчете на КП, а ранние обероны в него нормально впишутся. (Сразу отмечу, что расхождения в разрядности между Обероном и Компонентным Паскалем серьезной помехой не являются.)
Илья Ермаков правильно говорит, что сначала можно реализовать одну версию Оберона, потом добавить остальные.

Совместимость со "сторонними" библиотеками основывается на использовании одинаковых соглашений о вызовах процедур (calling convention), т.е. того, как передаются аргументы, и, в случае процедуры-функции, того, как возвращается значение.
В случае Windows есть общепринятый способ (stdcall).
Если в calling convention все-таки будут расхождения, то обероновский модуль, представляющий интерфейс сторонней библиотеки, возьмет на себя роль "шлюза" и обеспечит согласованность интерфейсов.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 10 Март, 2008 19:02 

Зарегистрирован: Вторник, 29 Ноябрь, 2005 21:41
Сообщения: 1030
Я вообще не понимаю идею главного шага. Раз он оказывается кому-то нужен, то следует составить план работ и приступить к его выполнению. А область применения потом определят те, кто его будут использовать. Что может измениться от того что сейчас область в которой он будет использоваться будет определена неправильно. Неужели его не будут использовать из-за этого?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 10 Март, 2008 22:38 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Ну, у меня интерес довольно широкий. Нужен компилятор который может собирать под x86/x64 (Windows & Linux). Под Arm и MIPS (Linux). Компилятор желательно чтобы был под GPL, рантайм был под LGPL-лицензией.

Нужна общая "стандартная" библиотека. Нужна возможность оптимизации кода компилятором. Нужна кросс-компиляция. Нужно чтобы сборка исходников использующих только стандартну библиотеку и писаных скажем под Win/x64 спокойно и без правок собралось (и заработало!) на Linux/Arm. В общем, нужен ещё один front-end к gcc. Правда в этом случае я не очень понимаю как возможно сохранить загружабельность/выгружабельность модулей аля классическая Оберон-система или ББ. Посредством специфического рантайма + доп. утилитки для генерации таких модулей?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 10 Март, 2008 23:06 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
Alexey Veselovsky писал(а):
Ну, у меня интерес довольно широкий. Нужен компилятор который может собирать под x86/x64 (Windows & Linux). Под Arm и MIPS (Linux). Компилятор желательно чтобы был под GPL, рантайм был под LGPL-лицензией.

Нужна общая "стандартная" библиотека. Нужна возможность оптимизации кода компилятором. Нужна кросс-компиляция. Нужно чтобы сборка исходников использующих только стандартну библиотеку и писаных скажем под Win/x64 спокойно и без правок собралось (и заработало!) на Linux/Arm. В общем, нужен ещё один front-end к gcc. Правда в этом случае я не очень понимаю как возможно сохранить загружабельность/выгружабельность модулей аля классическая Оберон-система или ББ. Посредством специфического рантайма + доп. утилитки для генерации таких модулей?

И что будет в качестве инструментальной системы? BlackBox? Или что-то специфическое?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 10 Март, 2008 23:18 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Axcel писал(а):
И что будет в качестве инструментальной системы? BlackBox? Или что-то специфическое?


Для ББ придется в стандартную библиотеку пихать ещё и графику как минимум. У ББ больши-ие проблемы с невиндой. Поэтому в качестве "инструментальной системы" логично предположить произвольный текстовый редактор + консольные утилиты. Лично меня это более чем устроило бы.

Ну, можно плагин к еклипсе написать. ;-)

PS. Кстати. хорошо бы чтобы компилятор умел экспортировать синтаксическое дерево. Т.е. чтобы было возможным сделать нечто аля ASIS'a Адовского. Да и для всяких плагинов к эклипсе это бы сильно пригодилось.


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

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


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

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


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

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