| OberonCore https://forum.oberoncore.ru/  | 
|
| Проект MultiOberon https://forum.oberoncore.ru/viewtopic.php?f=157&t=6423  | 
	Страница 1 из 4 | 
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 09:03 ] | 
| Заголовок сообщения: | Проект MultiOberon | 
МультиОберон это компилятор языка Оберон с различными сменными бэкендами: - Генератором нативного кода x86 для системы BlackBox; - Транслятором Ofront в язык C; - Генератором кода LLVM. МультиОберон это кроссплатформенный компилятор с поддержкой: - Windows X86; - Windows X64. МультиОберон это масштабируемая технология на основе систем ограничений с начальной точкой в виде синтаксиса Компонентного Паскаля. МультиОберон предназначен для работы из среды BlackBox и из командной строки. Ссылка на гитхабе здесь  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 09:43 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Как работать с Omb - бэкендом BlackBox ссылка на форуме Как работать с Omf - бэкендом OFront ссылка на форуме Как работать с Oml - бэкендом LLVM ссылка на форуме  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 10:34 ] | 
| Заголовок сообщения: | Multi бэкенды | 
Структура компилятора - пре/постпроцессорная, на основе OP2. Это значит более сложная структура, чем компилятор Oberon-0, Вирт писал(а): которая больше подходит для включения в его состав алгоритмов оптимизации. И еще цитата Вирт писал(а): существенное преимущество такой структуры: разделение компилятора на целенезависимый препроцессор и целезависимый постпроцессор В МультиОбероне более четко определены интерфейсы с бэкендами и реализованы сменные бэкенды. Естественно, состав сменных бэкендов может наращиваться. Сменные бкенды существенно диверсифицируют среду разработки: - нативный BlackBox дает лучшую компактность и скорость компиляции; - LLVM дает возможность оптимизации кода и кроссплатформенность; - OFront дает возможность ставить на такие системы, для которых, кроме С-компилятора ничего не создавалось. Все это вместе дает повышенную живучесть. Как я уже писал, прилетит Черный Лебедь в виде проекта только 64-бит - и что тогда...  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 12:23 ] | 
| Заголовок сообщения: | Multi платформы | 
Кодогенераторы для данной 5.0 версии LLVM заявляют поддержку следующих целевых платформ (см. файлы LLVM/Mod/For*.odc): - AArch64; - AMDGPU; - ARM; - BPF; - Hexagon; - Lanai; - MSP430; - Mips; - NVPTX; - PowerPC; - Sparc; - SystemZ; - X86; - XCore. Появляется возможность работать с этими платформами. Я пока пробовал только с X86/X86_64. В данной версии представлены пакеты для работы с OS Windows. Работы для Linux в области моих интересов. И, наконец, исполняющая система реализована и для 32-bit, и для 64-бит. Например, System/Mfwe/Kernel.odc реализован для 32-бит OFront. А System/Mfwr/Kernel.odc реализован для 64-бит OFront.  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 12:41 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Для размещения каталогов файлов, относящихся к разным платформам приняты трехбуквенные обозначения [backend].[os].[mode]: - где backend: b - BlackBox, f - oFront, l - Llvm; - где os: w - Windows, u - Unix; - где mode: e - extended 32-bit, r - real 64-bit. Таким образом, с исходником платформо-зависимого файла Kernel работаем из: - Mfwe для 32-битного OFront под Windows; - Mfwr для 64-битного OFront под Windows; - Mlwe для 32-битного LLVM под Windows; - Mlwr для 64-битного LLVM под Windows; - Mod для версии по умолчанию, если не найдена платформо-зависимая. Аналогичным образом формируются каталоги для кодовых файлов: Cbwe, Cfwe, Cfwr, Clwe, Clwr. Аналогичным образом формируются каталоги для символьных файлов: Sbwe, Sfwe, Sfwr, Slwe, Slwr. Бинарники приложений расположены в: - Bbwe для OmbSh.exe приложения 32-битной оболочки Omb для BlackBox; - Bfwe для OmfSh.exe приложения 32-битной оболочки Omf для OFront; - Bfwr для OmfSh.exe приложения 64-битной оболочки Omf для OFront; - Blwe для OmlSh.exe приложения 32-битной оболочки Oml для LLVM; - Blwe для OmlSh.exe приложения 64-битной оболочки Oml для LLVM.  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 12:55 ] | 
| Заголовок сообщения: | Multi языковость | 
Я обрисовывал свое видение масштабируемой технологии на основе системы ограничений USE на дне Оберона 2018 и уже в виде RESTRICT на OSDAY 2019 Пока еще RESTRICT в стадии реализации. В любом случае в качестве нулевой начальной точки принимается синтаксис Oberon/ComponetPascal.  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 13:00 ] | 
| Заголовок сообщения: | Multi форматность | 
И, наконец, работа нужна как из графической среды, так и из командной строки. Так или иначе приходится использовать скрипты для разных целей. Это может быть и Оберон shell.  | 
	|
| Автор: | Иван Денисов [ Суббота, 17 Август, 2019 13:01 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Вот это новость! Спасибо, что выложили.  | 
	|
| Автор: | maliya [ Суббота, 17 Август, 2019 13:13 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
so wonderful project! first one llvm backend outcome, interesting!  | 
	|
| Автор: | Дмитрий Дагаев [ Суббота, 17 Август, 2019 13:40 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Проект MultiOberon на сайте OberonCore.  | 
	|
| Автор: | Илья Ермаков [ Суббота, 17 Август, 2019 15:52 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Дмитрий Викторович, поздравляю! Это большая веха для Оберона и сообщества!  | 
	|
| Автор: | Comdiv [ Суббота, 17 Август, 2019 19:03 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Выглядит интересно, особенно с учётом работы над GNU/Linux версией. Когда она выйдет, надеюсь её увидеть в общем репозитории для удобной установки.  | 
	|
| Автор: | SovietPony [ Воскресенье, 18 Август, 2019 13:06 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Шикарненько. Обязательно утяну LLVM-генератор к себе. Вижу что повсюду изменён стиль исходников... диффать немножко проблемно. В CPfront починена поддержка 64 бит, какие есть ещё изменения в генераторах 486 и CPfront? Как у LLVM с поддержкой мета-информации?  | 
	|
| Автор: | GameHunter [ Вторник, 10 Сентябрь, 2019 22:09 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Это компилятор оригинального виртовского оберона? Планируется поддержка комплексных чисел? Планируется поддержка многопоточности?  | 
	|
| Автор: | Дмитрий Дагаев [ Среда, 11 Сентябрь, 2019 09:44 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Это профилируемый компилятор с начальной точкой в виде компонентного Паскаля, который можно настроить под 07 или 13 с помощью системы ограничений. Профилированное расширение отработанными решениями входит в концепцию. Планов чего-то включать в ближайшее время нет.  | 
	|
| Автор: | Comdiv [ Среда, 11 Сентябрь, 2019 11:56 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Дмитрий Дагаев писал(а): Это профилируемый компилятор с начальной точкой в виде компонентного Паскаля, который можно настроить под 07 или 13 с помощью системы ограничений. И расширимость записей по умолчанию?
		
		 | 
	|
| Автор: | Дмитрий Дагаев [ Среда, 11 Сентябрь, 2019 13:00 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Пользы от наличия EXTENSIBLE больше, чем от отсутствия.  | 
	|
| Автор: | Comdiv [ Среда, 11 Сентябрь, 2019 13:12 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
То есть, речь не про O7, а про подмножество, похожее на O7?  | 
	|
| Автор: | Дмитрий Дагаев [ Среда, 11 Сентябрь, 2019 13:50 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Да. Но профили для приведения к виду, семантически подобному О7, я не выставлял.  | 
	|
| Автор: | Wlad [ Четверг, 12 Сентябрь, 2019 17:15 ] | 
| Заголовок сообщения: | Re: Проект MultiOberon | 
Спасибо. Поздравляю. Успехов!  | 
	|
| Страница 1 из 4 | Часовой пояс: UTC + 3 часа | 
| Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/  | 
|