OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 19 Сентябрь, 2019 05:05

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




Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 09:03 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
МультиОберон это компилятор языка Оберон с различными сменными бэкендами:
- Генератором нативного кода x86 для системы BlackBox;
- Транслятором Ofront в язык C;
- Генератором кода LLVM.

МультиОберон это кроссплатформенный компилятор с поддержкой:
- Windows X86;
- Windows X64.

МультиОберон это масштабируемая технология на основе систем ограничений с начальной точкой в виде синтаксиса Компонентного Паскаля. МультиОберон предназначен для работы из среды BlackBox и из командной строки.

Ссылка на гитхабе здесь


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 09:43 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Как работать с Omb - бэкендом BlackBox ссылка на форуме
Как работать с Omf - бэкендом OFront ссылка на форуме
Как работать с Oml - бэкендом LLVM ссылка на форуме


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Multi бэкенды
СообщениеДобавлено: Суббота, 17 Август, 2019 10:34 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Структура компилятора - пре/постпроцессорная, на основе OP2. Это значит более сложная структура, чем компилятор Oberon-0,
Вирт писал(а):
которая больше подходит для включения в его состав алгоритмов оптимизации.

И еще цитата
Вирт писал(а):
существенное преимущество такой структуры: разделение компилятора на целенезависимый препроцессор и целезависимый постпроцессор


В МультиОбероне более четко определены интерфейсы с бэкендами и реализованы сменные бэкенды. Естественно, состав сменных бэкендов может наращиваться.

Сменные бкенды существенно диверсифицируют среду разработки:
- нативный BlackBox дает лучшую компактность и скорость компиляции;
- LLVM дает возможность оптимизации кода и кроссплатформенность;
- OFront дает возможность ставить на такие системы, для которых, кроме С-компилятора ничего не создавалось.

Все это вместе дает повышенную живучесть. Как я уже писал, прилетит Черный Лебедь в виде проекта только 64-бит - и что тогда...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Multi платформы
СообщениеДобавлено: Суббота, 17 Август, 2019 12:23 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Кодогенераторы для данной 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.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 12:41 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Для размещения каталогов файлов, относящихся к разным платформам приняты трехбуквенные обозначения [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.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Multi языковость
СообщениеДобавлено: Суббота, 17 Август, 2019 12:55 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Я обрисовывал свое видение масштабируемой технологии на основе системы ограничений USE на дне Оберона 2018 и уже в виде RESTRICT на OSDAY 2019
Пока еще RESTRICT в стадии реализации.

В любом случае в качестве нулевой начальной точки принимается синтаксис Oberon/ComponetPascal.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Multi форматность
СообщениеДобавлено: Суббота, 17 Август, 2019 13:00 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
И, наконец, работа нужна как из графической среды, так и из командной строки.

Так или иначе приходится использовать скрипты для разных целей. Это может быть и Оберон shell.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 13:01 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2365
Вот это новость! Спасибо, что выложили.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 13:13 

Зарегистрирован: Четверг, 12 Июнь, 2008 17:30
Сообщения: 37
so wonderful project! first one llvm backend outcome, interesting!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 13:40 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Проект MultiOberon на сайте OberonCore.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 15:52 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9139
Откуда: Россия, Орёл
Дмитрий Викторович, поздравляю!

Это большая веха для Оберона и сообщества! :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Суббота, 17 Август, 2019 19:03 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 888
Откуда: Киев
Выглядит интересно, особенно с учётом работы над GNU/Linux версией. Когда она выйдет, надеюсь её увидеть в общем репозитории для удобной установки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Воскресенье, 18 Август, 2019 13:06 

Зарегистрирован: Воскресенье, 09 Декабрь, 2018 15:14
Сообщения: 54
Откуда: Equestria
Шикарненько. Обязательно утяну LLVM-генератор к себе.
Вижу что повсюду изменён стиль исходников... диффать немножко проблемно.
В CPfront починена поддержка 64 бит, какие есть ещё изменения в генераторах 486 и CPfront?
Как у LLVM с поддержкой мета-информации?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Вторник, 10 Сентябрь, 2019 22:09 

Зарегистрирован: Вторник, 22 Май, 2007 15:38
Сообщения: 148
Откуда: Питер
Это компилятор оригинального виртовского оберона?

Планируется поддержка комплексных чисел?

Планируется поддержка многопоточности?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Среда, 11 Сентябрь, 2019 09:44 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Это профилируемый компилятор с начальной точкой в виде компонентного Паскаля, который можно настроить под 07 или 13 с помощью системы ограничений. Профилированное расширение отработанными решениями входит в концепцию. Планов чего-то включать в ближайшее время нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Среда, 11 Сентябрь, 2019 11:56 

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Среда, 11 Сентябрь, 2019 13:00 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Пользы от наличия EXTENSIBLE больше, чем от отсутствия.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Среда, 11 Сентябрь, 2019 13:12 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 888
Откуда: Киев
То есть, речь не про O7, а про подмножество, похожее на O7?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Среда, 11 Сентябрь, 2019 13:50 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 380
Откуда: Москва
Да. Но профили для приведения к виду, семантически подобному О7, я не выставлял.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проект MultiOberon
СообщениеДобавлено: Четверг, 12 Сентябрь, 2019 17:15 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1388
Спасибо. Поздравляю. Успехов!


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

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


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

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


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

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