OberonCore
https://forum.oberoncore.ru/

Доморощенный транслятор и интерпретатор Oberon
https://forum.oberoncore.ru/viewtopic.php?f=28&t=3954
Страница 3 из 4

Автор:  Александр Ильин [ Среда, 22 Август, 2012 12:17 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Иван Денисов писал(а):
там не только ведь в цикле FOR отличие?
Конечно, нет. Например, процедуры, связанные с типом, появились в Обороне-2, а в первой Обороне были только процедурные переменные.

Автор:  Иван Денисов [ Среда, 22 Август, 2012 13:09 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Александр Ильин писал(а):
Иван Денисов писал(а):
там не только ведь в цикле FOR отличие?
Конечно, нет. Например, процедуры, связанные с типом, появились в Обороне-2, а в первой Обороне были только процедурные переменные.
Это оно? http://www.oberon2005.oberoncore.ru/paper/oberon.pdf

Автор:  Евгений Темиргалеев [ Среда, 22 Август, 2012 13:41 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Про отличия статья отдельная есть. см. http://oberoncore.ru/wiki/lang/oberon-2
Синтаксис оберона см. http://oberoncore.ru/library/wirth_the_ ... age_oberon

Автор:  egphilippov [ Понедельник, 22 Октябрь, 2012 22:51 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

по поводу гомоморфизма Linux Suite -> Extended Oberon:

(4:39:39) egp: ещё надо си 2 extended oberon
(4:39:55) egp: и с++ 2 extended oberon
(4:40:05) egp: и bash 2 e.o.
(4:40:11) egp: и Make 2 e.o. :)

Автор:  Alexander Shiryaev [ Среда, 24 Октябрь, 2012 02:10 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

egphilippov писал(а):
по поводу гомоморфизма Linux Suite -> Extended Oberon:

(4:39:39) egp: ещё надо си 2 extended oberon
(4:39:55) egp: и с++ 2 extended oberon
(4:40:05) egp: и bash 2 e.o.
(4:40:11) egp: и Make 2 e.o. :)

(4:40:18) egp: и Perl 2 e.o. :cry:

Автор:  egphilippov [ Вторник, 30 Октябрь, 2012 23:10 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

да мне уже показали примерчики даже на Си++ и я упал

ну перл да, особенно руби и прочий питон и сожители

затея негодня.

Автор:  egphilippov [ Понедельник, 10 Декабрь, 2012 02:49 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

egphilippov писал(а):
Для бутстрапа из "пустой" системы почти доделан кроссплатформенный интерпретатор Оберон (делаю на C++). Делается из вышеупомянутого парсера AST, доделываю интерпретатор до рабочего состояния.

На этом интерпретаторе (как только его финализирую, щас он в стадии Incubation) думаю написать уже на Обероне транслятор в машкод i386.


Микро-майлстоун! Интерпретатором успешно прогнан пустой модуль. Ща буду на обероновом кокоре делать грамматику для компилятора с целью быть проинтерпретированной этим интерпретером.

Автор:  egphilippov [ Вторник, 11 Декабрь, 2012 02:32 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

1) раздельную компиляцию приделал - она на диски ничего не кладёт пока, всё складывает в памяти. То есть научил интерпретатор обращаться с импортами.

2) напустил свой интерпретатор на Coco.Cod с оф.сайта кокорщиков - всё распарсилось кроме одной-двух процедур вида

Код:
PROCEDURE *Show(t: Texts.Text; op: INTEGER; beg, end: LONGINT);
BEGIN END Show;


3) на очереди в интерпретаторе сделать исполнялку стейтментов.

Автор:  Alexander Shiryaev [ Вторник, 11 Декабрь, 2012 04:19 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

egphilippov писал(а):
1) раздельную компиляцию приделал - она на диски ничего не кладёт пока, всё складывает в памяти. То есть научил интерпретатор обращаться с импортами.


Как тут написано? :wink:

Автор:  egphilippov [ Вторник, 11 Декабрь, 2012 05:01 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Alexander Shiryaev писал(а):
egphilippov писал(а):
1) раздельную компиляцию приделал - она на диски ничего не кладёт пока, всё складывает в памяти. То есть научил интерпретатор обращаться с импортами.


Как тут написано? :wink:


Диссертация интересная, но вот когде руки до разного чтива дойдут — неясно.

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 03:27 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Поискал действующий Coco/R для оберона — не нашёл. Для какого из флаворов System3/4 выложен кокор на сайте кокорщиков - неясно. Выдрать кокор из существующих System3/4 - сложновато.

Короче видимо обойдётся мой оберон-компилятор без бутстрапа, прямо в си++ исходник буду кодогенерацию встраивать.

Автор:  Alexander Shiryaev [ Пятница, 21 Декабрь, 2012 08:18 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Последняя версия Coco/R для Оберона здесь.

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 08:35 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Новый кокор завезли. Ща испытаем. Спасибо большое, Александр.

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 13:30 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

MODULE Oberon
--- Cannot open file Args.Mod

Попробую выдернуть недостающие элементы из A2.

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 13:41 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

С первого тыка Args.Mod не нашёлся в дереве AOS ( http://code.google.com/r/egphilippov-et ... k%2Fsource )

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 13:53 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Вылез в дерево проектов автора.

obc-OberonSystem.0 — subset of Oberon System 3 for Oxford Oberon-2 compiler runtime

Где теперь взять исх.код этого Oxford Oberon-2 compiler?

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 14:13 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

obc скомпилял "MODULE Oberon", не ругнувшись на отсутствие файла Args.m.

$ obc Oberon.m
Oberon.k: Oberon imports Texts -- please load it first
Oberon.k: Oberon imports Display -- please load it first
$

Теперь осталось найти нормативную документацию о псевдомодуле Args.

Автор:  Alexander Shiryaev [ Пятница, 21 Декабрь, 2012 14:34 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

egphilippov писал(а):
$ obc Oberon.m
Oberon.k: Oberon imports Texts -- please load it first
Oberon.k: Oberon imports Display -- please load it first

Там же Makefile есть:
Код:
obc -j0 -o CocoCompile OFiles.m Reals.m Display.m Texts.m Sets.m Oberon.m CRS.m CRT.m CRA.m CRX.m CRP.m Coco.m CocoCompile.m

Цитата:
Теперь осталось найти нормативную документацию о псевдомодуле Args.
obb Args


Там примеры есть.

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 14:47 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Я просто сначала прогнал не obc, а своим интерпретатором, который споткнулся об Args... ок, примеры...

Автор:  egphilippov [ Пятница, 21 Декабрь, 2012 15:59 ]
Заголовок сообщения:  Re: Доморощенный транслятор и интерпретатор Oberon

Выдернул из obb все нужные псевдомодули, теперь с с++ затык

в с++ на ровном месте operator new исключение бросает

не люблю за это с++

хоть свои проекты с асма бутстрапь

благо никто не гонит =)

(22:22:21) egp: это у меня кстати происходит при попытке проинтерпретировать первый CALL PROC
(22:22:36) egp: то есть всё он вкушал
(22:22:46) egp: и пошел вызовы симулировать =)

Страница 3 из 4 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/