OberonCore

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

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




Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Пятница, 21 Январь, 2011 19:10 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Драконограф писал(а):
Да... я всё мыслил в категориях "удался/не удался" :)
В принципе, сравнивая с логикой AND-THEN - тут потенциально широко используются вставки в составе ELSE-блоков (т.к. многие действия при неуспехе разных этапов м.б. повторяющимися).


Если обобщить, то проверки условий должны быть перед первым этапом и между всеми последовательными этапами. Этого можно достичь обоими вариантами синтаксиса (изначально все проверки до этапов (мой вариант), или после этапов (вариант "удался/не удался" - первый этап можно сделать пустым)). Но мой вариант мне кажется проще и естественнее. Проверка условий после последнего блока смысла не имеет, поскольку не может передать управление куда-либо, кроме фактически еще одного блока.

Чтобы избежать дублирования кода в else-блоках, я добавлю внизу еще один общий блок failed - спасибо за наводку. :D

Вложение:
Progress.png
Progress.png [ 16.45 КБ | Просмотров: 12360 ]


Нумерация этапов автоматическая.
После выполнения любой ветви else выполняется ветвь failed, а затем завершается выполнение всей конструкции progress.
Внутри конструкции progress нет ограничений видимости имен.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 22 Январь, 2011 14:32 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Сергей Прохоренко писал(а):
Драконограф писал(а):
Да... я всё мыслил в категориях "удался/не удался" :)
В принципе, сравнивая с логикой AND-THEN - тут потенциально широко используются вставки в составе ELSE-блоков (т.к. многие действия при неуспехе разных этапов м.б. повторяющимися).
Если обобщить, то проверки условий должны быть перед первым этапом и между всеми последовательными этапами. Этого можно достичь обоими вариантами синтаксиса (изначально все проверки до этапов (мой вариант), или после этапов (вариант "удался/не удался" - первый этап можно сделать пустым)). Но мой вариант мне кажется проще и естественнее. Проверка условий после последнего блока смысла не имеет, поскольку не может передать управление куда-либо, кроме фактически еще одного блока.

Чтобы избежать дублирования кода в else-блоках, я добавлю внизу еще один общий блок failed - спасибо за наводку. :D

Нумерация этапов автоматическая.
После выполнения любой ветви else выполняется ветвь failed, а затем завершается выполнение всей конструкции progress.
Внутри конструкции progress нет ограничений видимости имен.
Это так выглядит "графитно", видимо :):
Вложение:
Рисунки А3LS - Конструкция PROGRESS-IF (примитив и блок-силуэт).png
Рисунки А3LS - Конструкция PROGRESS-IF (примитив и блок-силуэт).png [ 179.21 КБ | Просмотров: 12355 ]
По-прежнему рассматривается вариант "силуэт как квазишампур-блок объемлющего алгоритма".
    При этом единственно пришлось исхитриться, чтобы не рассматривать конечный блок прогресса отдельно (в формат не влез бы :wink:) - включил его в {ПL} и дал понять (через бесконтурные дубли границ ветки для "особого случая"), что, будучи конечным/единственным, он передаёт управление на конец всей конструкции.
    Внизу посмотрел, используя "областную вариацию" по п/п 1.3.2.1, что будет, если привести блок-силуэт к шампур-блоку полностью. Переходы с удвоением одного края контура - не БП, а просто соединители, вводимые, как указано здесь - для размыкания пересечений в планарной форме записи. Вообще-то м.б. ввести обычные соединители - как сам Паронджанов предлагает здесь - но дело в том, что размыкания пересечений также используются при переходе к силуэту, как показано, скажем, в этом примере - и тогда это именно будущие силуэтные БП. Поэтому, так сказать, "из педагогических соображений" :) за основу и принят БП.

    Содержание свёрстано по веткам так, чтобы отразить БП, которые реально добавятся при трансляции по правилам лиорасширения с условно-безусловным переходом - т.е. чтобы каждую вертикаль можно было "выкладывать" отдельно.
Видно, что в ЦД преобразовывать смысла нет - слишком сложно будет.. А так - обычная лианная структура... Нумерация собственно не нужна - заменяется БП-адресацией. Хотя это справедливо, если в редакторе кодогенерируем - иначе вопрос в порядке "молота типов" - во что на целевом прогязыке (Оберон-07) транслироваться будет? Собственно, эта визуализация его и ставит :)


Последний раз редактировалось Владислав Жаринов Воскресенье, 23 Январь, 2011 07:19, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Суббота, 22 Январь, 2011 20:02 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Не смог разобраться в Вашей схеме. Привожу обычную блок-схему:
Вложение:
Блок-схема.png
Блок-схема.png [ 16.49 КБ | Просмотров: 12337 ]


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 05:29 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Сергей Прохоренко писал(а):
Не смог разобраться в Вашей схеме...
А в какой - "примитив" (слева "в столбик") или "блок-силуэт" (справа вверху "в строку")?
И что вызвало затруднения? В схемах ставились задачи:
    * Напрямую представить Ваш текст с троеточиями.
    * Отразить (через употребление имён в текстах вершин) Ваши рассуждения относительно употребления величин всего алгопроцесса в конструкции данного вида.
Естественно, это требует развитого формального текста вершин. А м.б. вопросы по оформлению каких-то типов графо-/текстоэлементов?
При этом второй этап выпустил для экономии места - возможно, это не очень удобно. Можно ввести - но это требует разрешить один вопрос, не решённый в Вашем определении - предполагается ли допустимой такая конструкция из одного этапа? Или сочинителю будет предлагаться определить не менее двух - а иначе, допустим, редактор автоматически преобразует в обычную развилку (где блоки F1 и FП идут цепочкой)?


Последний раз редактировалось Владислав Жаринов Воскресенье, 23 Январь, 2011 07:58, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 07:49 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Драконограф писал(а):
Сергей Прохоренко писал(а):
...Привожу обычную блок-схему:
Вложение:
Блок-схема.png
...
Ну, в принципе одно и то же :) только для фиксированного числа веток (я напрямую представлял Ваш текст с троеточиями, только второй этап выпустил для экономии места - возможно, это не очень удобно).

А вопрос возникший - как это предполагается представлять на Обероне-07 (исхтекстом, который, как я понял, должен генерировать структурный редактор)?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 13:33 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Драконограф писал(а):
Сергей Прохоренко писал(а):
Не смог разобраться в Вашей схеме...
А в какой - "примитив" (слева "в столбик") или "блок-силуэт" (справа вверху "в строку")?
И что вызвало затруднения? В схемах ставились задачи:
    * Напрямую представить Ваш текст с троеточиями.
    * Отразить (через употребление имён в текстах вершин) Ваши рассуждения относительно употребления величин всего алгопроцесса в конструкции данного вида.
Естественно, это требует развитого формального текста вершин. А м.б. вопросы по оформлению каких-то типов графо-/текстоэлементов?
При этом второй этап выпустил для экономии места - возможно, это не очень удобно. Можно ввести - но это требует разрешить один вопрос, не решённый в Вашем определении - предполагается ли допустимой такая конструкция из одного этапа? Или сочинителю будет предлагаться определить не менее двух - а иначе, допустим, редактор автоматически преобразует в обычную развилку (где блоки F1 и FП идут цепочкой)?


Первая схема оказалась непонятной, поэтому во вторую вникать не стал (это ведь результат преобразования первой). Изучать Дракон я не буду, а "с лету" не понял. Если бы изучил Дракон, то наверное понял бы.

Конструкция из одного этапа возможна. Например, было в конструкции два этапа, а потом один удалили за ненадобностью. Или изначально вставили в конструкцию только один этап - чтобы в будущем добавить еще. Конструкция должна корректно отрабатывать один этап.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 13:38 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Драконограф писал(а):
А вопрос возникший - как это предполагается представлять на Обероне-07 (исхтекстом, который, как я понял, должен генерировать структурный редактор)?


Многоветочные конструкции и эта конструкция поэтапного выполнения progress будут добавлены как расширение языка Оберон-07. В "текстовом" языке заморачиваться с такими конструкциями накладно, а в графическом они будут очень удобны.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 15:36 

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 16:33 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Geniepro писал(а):
Сергей Прохоренко писал(а):
Многоветочные конструкции и эта конструкция поэтапного выполнения progress будут добавлены как расширение языка Оберон-07.
А смысл? Ведь эту конструкцию легко представить в виде вложенных IF-ов, для автоматической генерации кода никаких проблем с этим не будет. Зачем вводить расширение языка, которое люди всё равно не увидят?



Не спорю. Можно представить и в виде IF-ов. Но готовая конструкция сэкономит время и избавит от ошибок. И люди ее увидят. Без цикла Дейкстры тоже можно было обойтись, но ведь в некоторых языках он есть. Речь идет о конструкциях для часто используемых алгоритмов.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 23:20 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Сергей Прохоренко писал(а):
Geniepro писал(а):
Сергей Прохоренко писал(а):
Многоветочные конструкции и эта конструкция поэтапного выполнения progress будут добавлены как расширение языка Оберон-07.
А смысл? Ведь эту конструкцию легко представить в виде вложенных IF-ов,...
Не спорю. Можно представить и в виде IF-ов. Но готовая конструкция сэкономит время и избавит от ошибок. И люди ее увидят...
А как представить вложением IF-ов - можно увидеть роспись?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 23 Январь, 2011 23:32 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Драконограф писал(а):
А как представить вложением IF-ов - можно увидеть роспись?
Примерно вот так:
Код:
progress
    if Cond_1 then TrueAction_1
    else           FalseAction_1

    if Cond_2 then TrueAction_2
    else           FalseAction_2

    if Cond_3 then TrueAction_3
    else           FalseAction_3

    failed         FalseActon
можно представить так:
Код:
bool ok := true

if Cond_1 then
    TrueAction_1
    if Cond_2 then
        TrueAction_2
        if Cond_3 then
            TrueAction_3
        else           
            FalseAction_3
            ok := false
    else           
        FalseAction_2
        ok := false
else           
    FalseAction_1
    ok := false

if not ok then
    FalseActon


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 00:24 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Уровень вложенности циклов (слово "циклов", разумеется, тут не к месту) почти равен количеству этапов. :( Вот, наверное, почему Илье Ермакову захотелось использовать новую специальную конструкцию. Хотя, может быть, Илья как-то обошел этот неприятный момент. Глядя на это и про goto невольно вспомнишь.


Последний раз редактировалось Сергей Прохоренко Понедельник, 24 Январь, 2011 11:06, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 06:24 

Зарегистрирован: Вторник, 13 Ноябрь, 2007 20:38
Сообщения: 1056
Сергей Прохоренко писал(а):
... будут добавлены как расширение языка Оберон-07.
Не забудьте в список требуемых работ включить работу по созданию расширенного компилятора Оберон-07, который будет понимать Ваши расширения. :wink:


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 06:39 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Geniepro в viewtopic.php?p=58338#p58338 писал(а):
Драконограф писал(а):
А как представить вложением IF-ов - можно увидеть роспись?
Примерно вот так:
...
можно представить так:
...
Вот в том-то и дело, что примерно. Реально нужно прежде всего вспомнить об endif-ах - т.е. структурно разрешённых БП - соединителях плеч развилки (в графит-методе показаны здесь - под меткой <Часть(i+1)>; для текстовой формы см. Свердлова - скажем, выдержку в этом сообщении, более развёрнутая цитата в этом соообщении). Тогда первый код запишется так:
Код:
progress
    if Cond_1 then TrueAction_1
    else           FalseAction_1
    END (*if Cond_1*)
    if Cond_2 then TrueAction_2
    else           FalseAction_2
    END (*if Cond_2*)
    if Cond_3 then TrueAction_3
    else           FalseAction_3
    END (*if Cond_3*)
    failed         FalseActon
END (*Progress*)
И выполняться будет, ессно, по цепочке - т.е. был у нас на предыдущем этапе труй или фальш, неважно - на текущем снова выполнится либо труёвый, либо фальшивый блок этапа (сообразно выбору плеча в развилке по условию)... а потом уж общефальшивый блок (и опять-таки независимо от прохождения на каких-либо этапах выше фальшивых маршрутов). Я так понимаю, желаемой логике PROGRESS-IF это не вполне соответствует :) Или мы должны полагаться на то, что магические слова progress и failed меняют логику БП-соединителей (так, что для труёвого маршрута это местный END - причём на последнем этапе сразу переадресующий на END (*Progress*), а для фальшивого - всегда END от IF последнего этапа - указывающий на failed)... а это ревизия целевого прогязыка и должна транслироваться "не по Свердлову" (точнее, не по стандарту О-07) :wink:
Во втором случае полный код, как я понимаю, имеет вид:
Код:
bool ok := true

if Cond_1 then
    TrueAction_1
    if Cond_2 then
        TrueAction_2
        if Cond_3 then
            TrueAction_3
        else           
            FalseAction_3
            ok := false
        END (*if Cond_3*)
    else           
        FalseAction_2
        ok := false
    END (*if Cond_2*)
else           
    FalseAction_1
    ok := false
END (*if Cond_1*)
if not ok then
    FalseActon
END (*if not ok*)
И выполняться будет по логике PROGRESS-IF только в случае, если endif-ы при вложении трактуются так, как показано опять же здесь для БП <Часть(i+1)>. Т.е. из любой развилки выходим не в тело следующей (непосредственно объемлющей в "матрёшке") - а сразу в конец внешней - все endif-ы "запараллелены" по уровням вложения.
Так это или нет в Обероне-07 - не знаю, только странно получается - а если на каком-то уровне развилки цепочкой следуют - тогда как из матрёшки выходить? Спецификация Оберон-2 у Свердлова (выдержку см. в этом сообщении) не оговаривает простое вложение IF-ELSE-END (в Паскале, помнится, было правило, надо смотреть) - возможно, потому, что предполагается использование IF{-ELSIF}-END. Но по логике он для прогресса не подходит (можно выбрать только один из труёвых блоков - либо единственный фальшивый).
Отсюда, видимо, и это замечание:
Сергей Прохоренко в viewtopic.php?p=58342#p58342 писал(а):
Уровень вложенности циклов почти равен количеству этапов. :( Вот, наверное, почему Илье Ермакову захотелось использовать новую специальную конструкцию. Хотя, может быть, Илья как-то обошел этот неприятный момент. Глядя на это и про goto невольно вспомнишь.
Только циклов тут нет - но вспомнили про них не зря... как и про БП (неструктурный, т.е. брейк/континуй, как минимум). Дело в том, что прогресс-конструкция в последней форме вложениями не получается (если менять логику endif-ов в развилках этапов, как говорил выше - то в терминах шампур-метода имеем лианную структуру). Если б не общий фальшблок - то можно было бы.
Мне, чтобы понять это, достаточно было построить графит-схему - и увидеть, что получаются лианные блоки. А пересадка лианы - это брейк и есть в текстовой записи (когда пересаживаем не по той оси порядка, от которой отрывали конец лианы, и не в пределах от её начальной вершины до конца оси). Допущение которого противоречит этому проектному решению по структурному редактору:
Сергей Прохоренко в viewtopic.php?p=57751#p57751 писал(а):
...я сделал следующие выводы применительно к PureBuilder:
В PureBuilder не применяются операторы перехода goto и операторы досрочного выхода exit, break, exit when, continue, return и аналогичные им.
...
Как Илья обошёл (бы) это - вариант показан в этом сообщении - сам он не оценил соответствия, правда. Но логика конструкции там, как видим, другая, чем в прогрессе - и опять лианная.
В то же время структурный выход есть - как и ранее, привести к ЦД - вот его, видимо, и в этом случае можно построить без пересадок. Понадобится переменная номера ЦД-ветви - но она так и так нужна (если приводим не к ЦД - то флаги потребуются; кстати, создатель техноязыка и Илья указывают на то же применительно к силуэту - адреса силуэтных БП скрывают переменную состояния, являясь по сути её значениями).

Наверное, всё это можно было бы понять и не изучая граф-язык (как Сергей предлагает) - но тогда нужно привлекать эквивалентный текстовый метод структурного анализа - возможно, то что Илья предложил для определения шампур-схем как случая устремлённых графов.
Кое-что можно понять и по блок-схеме Сергея - но тут не соблюдается правило "вход и выход блока следования на одной вертикали" - поэтому порядок в осях надо мысленно восстанавливать. Идея вынести общий фальшблок на отдельную ось любопытна.


Последний раз редактировалось Владислав Жаринов Понедельник, 24 Январь, 2011 08:11, всего редактировалось 9 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 06:46 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
igor писал(а):
Сергей Прохоренко писал(а):
... будут добавлены как расширение языка Оберон-07.
Не забудьте в список требуемых работ включить работу по созданию расширенного компилятора Оберон-07, который будет понимать Ваши расширения. :wink:
Да, справедливо - кстати, вспоминается Ваше (и Ярослава) замечание такого же рода в связи с гибридизацией техноязыка в этом сообщении. :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 07:14 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Драконограф писал(а):
Реально нужно прежде всего вспомнить об endif-ах
endif'ы -- зло. В современных языках не должно быть всех этих endif'ов, а должны быть значимые отступы. Смотрите язык Питон, хотя бы...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 07:16 

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 07:28 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Geniepro писал(а):
Драконограф писал(а):
... техноязыка, алгоконструкции и прочее ...
Откуда у Вас такая страсть к этим новоязовским словообразованиям?
Чтобы не писать длинных словосочетаний... сложносокращённые слова также играют роль формальных терминов, указывая, что имеется в виду какое-то точное определение, а не многообразие возможных толкований сочетаемых слов в "неограниченном" естественном языке :)
А "новояз" - тоже словообразование того же рода :) Если это средство выражения негатива - непонятно, чем он вызван. Мы, кажется, не обсуждаем личности - только определённую предметную область :wink:


Последний раз редактировалось Владислав Жаринов Понедельник, 24 Январь, 2011 07:41, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 07:34 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Geniepro писал(а):
Драконограф писал(а):
Реально нужно прежде всего вспомнить об endif-ах
endif'ы -- зло. В современных языках не должно быть всех этих endif'ов, а должны быть значимые отступы. Смотрите язык Питон, хотя бы...
Я потому и сослался на Свердлова, чтобы напомнить - от того, что мы не пишем этих слов, обозначаемые ими элементы структуры (в виде БП-соединителей) никуда не деваются. И мы должны понимать, как работает конструкция целиком, без изъятий. Это не равнозначно тому, чтобы писать эти слова в конструкциях структурного редактора - что я и не предлагал. Если я неправильно восстановил работу данных конкретных вариантов - хотелось бы точного её определения от Вас - это будет по существу.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 24 Январь, 2011 08:02 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Драконограф писал(а):
А "новояз" - тоже словообразование того же рода :) Если это средство выражения негатива - непонятно, чем он вызван. Мы, кажется, не обсуждаем личности - только определённую предметную область :wink:
Негатив только в том, что на ровном месте вдруг возникает языковый барьер, затрудняющий понимание. Вот всякие "БП-соединители" -- что это? В результате я даже не знаю, что и ответить на Ваши вопросы, ибо не понимаю их смысла...


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

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


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

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


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

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