OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Среда, 18 Июнь, 2025 00:26

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




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: XDS/Oberon2 странности синтаксиса.
СообщениеДобавлено: Четверг, 13 Май, 2010 15:32 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Увидел вот такое вот в исходниках AGG:

Код:
  IF n <> 0 THEN


Если интересно, это файл AggMath.ob2 строка 252.
Это откуда вообще взялось и как работает?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XDS/Oberon2 странности синтаксиса.
СообщениеДобавлено: Четверг, 13 Май, 2010 17:19 
Аватара пользователя

Зарегистрирован: Среда, 29 Март, 2006 12:09
Сообщения: 495
http://oberonrevival.sourceforge.net/docs/xds/html/isom202.html#6 и http://oberonrevival.sourceforge.net/docs/xds/html/isom205.html#438
Этот кусок получился на Модуле.
XDS поддерживает смешение языков внутри одного модуля.
Я старался следить за тем, чтобы везде было "#", но, видимо, проглядел :roll:

Должно быть IF n # 0 THEN …


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: XDS/Oberon2 странности синтаксиса.
СообщениеДобавлено: Четверг, 13 Май, 2010 19:18 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Димыч писал(а):
http://oberonrevival.sourceforge.net/docs/xds/html/isom202.html#6 и http://oberonrevival.sourceforge.net/docs/xds/html/isom205.html#438
Этот кусок получился на Модуле.
XDS поддерживает смешение языков внутри одного модуля.
Я старался следить за тем, чтобы везде было "#", но, видимо, проглядел :roll:

Должно быть IF n # 0 THEN …


Гм. Т.е. без директив и прочего? Потому как расширение у файла .ob2, директив компилятору нигде не дадено (более того, вначале модуля имеем <* +O2EXTENSIONS *>, что однозначно указывает на оберон).

Такое ощущение, что товарисчи из Excelsior'a взяли, да скрестили оберон с модулой, т.е. объединили их синтаксис. Интересно было бы посмотреть на этот EBNF :-)

Да, применение <> я также обнаружил в Minimal.ob2, AggRendererOutlineAA.ob2, AggRasterizerCellsAA.ob2.

В AggBasics.ob2 обнаружил функцию:
Код:
PROCEDURE agg_power*(base, exponent: double): double;
BEGIN
  RETURN base ** exponent;
END agg_power;

Зачем она нужна?

Также обнаружил горстку ассемблерных вставок в том же злополучном AggBasics.ob2. Без них совсем никак?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

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


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

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


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

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