OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 15:54

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




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 16:07 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
В сообщении языка Component Pascal для цикла FOR написано:
Код:
   ForStatement =
      FOR ident ":=" Expression TO Expression [BY ConstExpression]
      DO StatementSequence END.

Но фактически, компилятор BlackBox разрешает FOR Qualident...
Что считать за эталон определения FOR: с ident или с Qualident?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 17:46 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
не то


Последний раз редактировалось Valery Solovey Четверг, 03 Апрель, 2008 18:15, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 18:03 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
не то


Последний раз редактировалось Valery Solovey Четверг, 03 Апрель, 2008 18:16, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 18:06 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Сергей Губанов писал(а):
Что считать за эталон определения FOR: с ident или с Qualident?

Я считаю, что Qualident, ошибка в сообщении. Ещё в Оберон-2 цикл FOR объявлен как синтаксически подслащённый WHILE, значит от WHILE и надо было бы плясать.
В реализации ETH Oberon тоже допускается Qualident, хотя в Oberon-2 Report указано ident, так что ошибка тянется издавна.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 18:07 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Valery Solovey писал(а):
Хотя, и вправду, не всё подходит.

Валерий, смотрите слева от знака присваивания.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 18:11 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
То есть блэкбоксовый компилятор Компонентного Паскаля не соответствует описанию языка?
Да уж, хоть описание языка занимает куда меньше тысячи страниц, но и его реализовать не так просто, оказывается... :о)
Кто там говорил о легендарном качестве и надёжности компиляторов оберонов?... :о)) Видно мало его тестировали... :о))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Четверг, 03 Апрель, 2008 22:08 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4695
Откуда: Россия, Орёл
Geniepro писал(а):
Кто там говорил о легендарном качестве и надёжности компиляторов оберонов?... :о))

Успокойтесь Евгений, в классическом Обероне нет цикла FOR.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Пятница, 04 Апрель, 2008 07:59 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Сергей Губанов писал(а):
Но фактически, компилятор BlackBox разрешает FOR Qualident...

У меня не разрешает.
Код:
VAR r:RECORD i: INTEGER END;
...
FOR [68]r.i := 0 TO 5 DO END;

[68]control variable must be integer


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Пятница, 04 Апрель, 2008 08:47 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
Но он должен разрешать глобальные переменные своего модуля. Аналогично он может разрешать эксп-е глобальные переменные другого модуля, к которым мы обр-ся через Qualident.
Кстати в Вашем примере исп-ся
Код:
Designator    =   Qualident {"." ident | "[" ExprList "]" | " ^ " | "(" Qualident ")"
      | "(" [ExprList] ")"} [ "$" ].


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: FOR ident... или FOR Qualident...?
СообщениеДобавлено: Пятница, 04 Апрель, 2008 09:38 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Trurl писал(а):
У меня не разрешает.

У вас Designator, а не Qualident.


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

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


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

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


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

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