OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Суббота, 18 Ноябрь, 2017 05:45

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




Начать новую тему Ответить на тему  [ Сообщений: 233 ]  На страницу Пред.  1 ... 7, 8, 9, 10, 11, 12  След.
Автор Сообщение
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Суббота, 17 Сентябрь, 2011 22:59 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
albobin писал(а):
есть сигнал с форума astrobe об исправлении oberon07 report на странице Вирта.
http://www.astrobe.com/forum/viewtopic.php?f=4&t=129&sid=ec3bd4370f6a4506ab10d01222b068df&start=10#p270
Сигнал уже прошёл по другим каналам :) viewtopic.php?p=65464#p65464


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 09:16 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 651
Откуда: Псков
http://www.astrobe.com/forum/viewtopic.php?f=4&t=129&sid=f2678c41fe23f89c25b7ebcc76c3d849&start=10#p270
дата файла oberon07.report.pdf от 15 сент.
вроде бы 10.1 немного исправлен, если не ошибаюсь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 09:44 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Доковская версия 18-Aug-2011 10:38 --- http://www.inf.ethz.ch/personal/wirth/Articles/Oberon/
По всей видимости, pdf из неё генерируется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 10:23 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 651
Откуда: Псков
Евгений Темиргалеев писал(а):
Доковская версия 18-Aug-2011 10:38 --- http://www.inf.ethz.ch/personal/wirth/Articles/Oberon/
По всей видимости, pdf из неё генерируется.

вот как раз они и отличаются (pdf от doc)
по крайней мере из 10.1 удалено "Value parameters must not be of an array or record type.". (Видимо эта фраза избыточна)

из форума astrobe (сообщения админа сайта):
12 сент
"I have written to Prof Wirth for clarification as both sections dealing with parameters seem to have only been partially updated. Section 10.1 also is not consistent with Section 9.2.
I will report back here when I know more."

17 сент.
"A corrected version of the report can now be downloaded from Prof Wirth's site:"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 11:20 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Теперь разглядел. Большое спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 16:06 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7712
Откуда: Троицк, Москва
Так которая версия правильная?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 19:46 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Адрес документа тот же: http://www.inf.ethz.ch/personal/wirth/A ... Report.pdf
Содержимое обновилось после 13-го числа. Правильную версию нужно повторно скачать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Воскресенье, 18 Сентябрь, 2011 20:01 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7712
Откуда: Троицк, Москва
Евгений Темиргалеев писал(а):
Адрес документа тот же: http://www.inf.ethz.ch/personal/wirth/A ... Report.pdf
Содержимое обновилось после 13-го числа. Правильную версию нужно повторно скачать.
Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Среда, 21 Сентябрь, 2011 17:23 
Аватара пользователя

Зарегистрирован: Пятница, 25 Сентябрь, 2009 13:10
Сообщения: 1157
Откуда: Tel-Aviv
Для предотвращения таких случаев проще изначально указывать номер редакции (revision). Типа поля build в очередной сборке программы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Суббота, 24 Сентябрь, 2011 20:11 

Зарегистрирован: Пятница, 20 Июль, 2007 17:26
Сообщения: 651
Откуда: Псков
На странице проф.Вирта дата ревизии сообщения об языке теперь 22.09.2011

PS.
Ради интереса сравнил.

- п.4.
добавлено COPY и LONG
- п.9.1
добавлено:
Neither may assignments be made to imported variables.
удалено:
2. Arrays must have the same element type, and the length of the destination array must not be
less than the length of the source array.
- п.10.2
добавлено COPY(x, v) ...
- Appendix The Syntax of Oberon
мелкие исправления очепяток

PPS
в файле от 26.09.2011
- п.10.2
исправлен тип аргумента у NEW(v) с "base type" на "pointer type"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 10:05 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7712
Откуда: Троицк, Москва
viewtopic.php?p=65821#p65821
Евгений Темиргалеев писал(а):
P.S. Правильно Вирт сделал, избавившись от параметров-значений структурных типов в Oberon-07 ...
Не знаю.
У меня в квази-арифметических алгоритмах это дело часто используется для размещения вспомогательных массивов. Длина вспомогательных массивов обычно равна (реже +\-1) длине "основного".

Можно, конечно, и обойтись. Но будет менее элегантно и чревато ошибками в ран-тайме (не та длина массива).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 10:22 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Info21 писал(а):
Евгений Темиргалеев писал(а):
P.S. Правильно Вирт сделал, избавившись от параметров-значений структурных типов в Oberon-07 ...
Не знаю.
У меня в квази-арифметических алгоритмах это дело часто используется для размещения вспомогательных массивов. ... Можно, конечно, и обойтись.
Можно не обходиться, а по-другому записать: viewtopic.php?p=65497#p65497


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 12:32 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7712
Откуда: Троицк, Москва
Евгений Темиргалеев писал(а):
Можно не обходиться, а по-другому записать: viewtopic.php?p=65497#p65497
Это и есть "обойтись", которое имелось в виду.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 17:28 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Info21 писал(а):
Можно, конечно, и обойтись. Но будет менее элегантно и чревато ошибками в ран-тайме (не та длина массива).
А чем эти способы отличаются в плане задания длины массива?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 17:49 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7712
Откуда: Троицк, Москва
Евгений Темиргалеев писал(а):
Info21 писал(а):
Можно, конечно, и обойтись. Но будет менее элегантно и чревато ошибками в ран-тайме (не та длина массива).
А чем эти способы отличаются в плане задания длины массива?
А она статически неизвестна, нужен код для проверок и, если что, переразмещения на куче.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 19:29 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Так размер стэка по умолчанию один мегабайт. Раз у Вас всё на стеке раньше убиралось, то задайте статический размер того массива в мегабайт и перераспределять не надо будет, уберётся всегда.

Правда если вы любили там, например, рекурсию делать, то статический массив в пролёте...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Четверг, 29 Сентябрь, 2011 19:38 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Info21 писал(а):
Евгений Темиргалеев писал(а):
А чем эти способы отличаются в плане задания длины массива?
А она статически неизвестна, нужен код для проверок и, если что, переразмещения на куче.
В приведённом Вами способе размеры статически фиксированы
Info21 писал(а):
TYPE Array = ARRAY N OF Type;
...
PROCEDURE P (VAR A: Array; B, C: Array);
PROCEDURE P (VAR A: ARRAY N OF Type; B, C: ARRAY N OF Type);

upd: По-моему, нестыковка. Может B, C д.б. открытыми массивами?

Что не так?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Пятница, 30 Сентябрь, 2011 07:27 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 2846
Откуда: Астрахань
Евгений Темиргалеев писал(а):
Info21 писал(а):
Евгений Темиргалеев писал(а):
А чем эти способы отличаются в плане задания длины массива?
А она статически неизвестна, нужен код для проверок и, если что, переразмещения на куче.
В приведённом Вами способе размеры статически фиксированы
Info21 писал(а):
TYPE Array = ARRAY N OF Type;
...
PROCEDURE P (VAR A: Array; B, C: Array);
PROCEDURE P (VAR A: ARRAY N OF Type; B, C: ARRAY N OF Type);

Что не так?

Проблема в том, что 2N > 1 мб могут быть. Если меньше, то проблем нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Пятница, 30 Сентябрь, 2011 10:33 

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 7712
Откуда: Троицк, Москва
Евгений Темиргалеев писал(а):
В приведённом Вами способе размеры статически фиксированы
Да, все параметры должны быть открытыми массивами.

Предполагается, что процедура должна работать для любых массивов.

Пусть процедура должна что-то сделать с матрицей. Она эту матрицу получает в кач. единств. параметра.
Но внутри алгоритма нужна вспомогат. матрица или несколько.
Для алгоритма заводится внутренняя процедура, в которой вспомогат. матрицы создаются на стеке как value-параметры.

Рекурсия -- да, реально возможна.
---
Обойтись можно, это с самого начала ясно (более того, трюк с value-массивами пришел последним).
Но как-то чисто эстетически использовать глоб. переменную на куче не нравится.
Раз уж можно легко использовать стек, не оставляя за собой мусора.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оберон-07
СообщениеДобавлено: Пятница, 30 Сентябрь, 2011 11:05 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4419
Откуда: Россия, Орёл
Info21 писал(а):
Да, все параметры должны быть открытыми массивами.
...
Раз уж можно легко использовать стек, не оставляя за собой мусора.
Теперь понятно. И прямого аналога не видно, и, согласен, причина значимая.

Нужна возможность размещать "дин". массивы на стэке при входе в процедуру. Типа
Код:
PROCEDURE P (VAR a: ARRAY OF T)
VAR b, c: ARRAY LEN(a) OF T
Должна ли она быть в языке или библиотеке? В сях есть что-то типа stack_alloc. В аде, может быть, можно размещать b, c: ARRAY LEN(a)...

Может спросите Вирта, что он по этому моменту думает?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 233 ]  На страницу Пред.  1 ... 7, 8, 9, 10, 11, 12  След.

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


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

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


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

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