OberonCore

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

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




Начать новую тему Ответить на тему  [ Сообщений: 59 ]  На страницу 1, 2, 3  След.
Автор Сообщение
СообщениеДобавлено: Суббота, 30 Январь, 2010 16:05 

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Уважаемые форумчане!

Прошу оказать посильную помощь для включения BlackBox (КП) в список допустимых сред программирования на Всероссийской олимпиаде школьников по информатике.
С 2002 года я участвую в организации олимпиад по программирования разного уровня, последние два года организовывал региональный этап Всероссийской олимпиады школьников по информатике.
Непосредственно написание письма Центральной предметно-методической комиссии по информатике с просьбой включения BB (КП) в список допустимых сред программирования на следующий год я беру на себя, но для этого мне нужны предельно конкретные ответы на следующие вопросы.

1. Точное указание названия среды (сборки) и способ её получения
Пример:
Цитата:
FreePascal 2.4, приложение являются свободно распространяемым и доступно на сайте: http://freepascal.org

2. Строка компиляции, для получения исполняемого файла
Пример:
Цитата:
Free Pascal 2.4: fpc <исходный файл>
Sun Java 6.0: javac <исходный файл>

Если нами не будут даны предельно точные ответы на эти два вопроса, думаю о включении BB (КП) в список разрешенных сред программирования можно забыть.

P.S.
С различными инструкциями для организаторов можно ознакомиться на сайте http://info.rusolymp.ru


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

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Наконец появился человек из олимпиадной тусовки, способный заняться этим делом.
Это то, чего не хватало.

Вы бы уж тогда сюда разжевали поточнее смысл пункта 2, чтобы всем на том сайте не рыться. Наверняка такой компилятор общими усилиями можно тут слепить.
Ну, а выложить его в открытый доступ -- не проблема :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 00:26 

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Все нижеизложенное непосредственно относится только к применению КП/BB для использования в качестве олимпиадной среды и не ставит целью создание очередного холивара.

В этом году допустимыми являлись следующие среды программирования:
    Borland Delphi 7.0;
    Borland Pascal 7.0;
    Borland C++ 3.1;
    Microsoft Visual C/C++ 2005 Express Edition;
    Microsoft Visual Basic 2005 Express Edition;
    FreePascal 2.2.2;
    GNU C/C++ 4.4.0 и выше (версия для Windows – MinGW);
    Sun Java 6.0;
    Eclipse 3.5;
    Code::Blocks 8.02.
Последние три пункта добавились только в текущем году, из чего можно сделать вывод, что этот список может быть в дальнейшем расширен.
ВСЕ вышеперечисленные среды (кроме java приложений, которые запускаются через java <имя класса>) позволяют создать исполняемый файл (exe-модуль) из командной строки при помощи соответствующих команд.
Код:
Компилятор   Командная строка
Borland Delphi 7.0   dcc32 -сс <исходный файл>
Free Pascal 2.2.0   fpc <исходный файл>
Visual С 2005   cl /02 /ТС <исходный файл>
GNU С 3.4.2 (MinGW)   gcc -02 -х с <исходный файл>
Visual C++ 2005   cl /02 /EHs /TP <исходный файл>
GNU C++ 3.4.2 (MinGW)   g++ -02 -х с++ <исходный файл>
Visual Basic 2005   vbc <исходный файл>
Borland Pascal 7.0   bрс <исходный файл>
Borland С 3.1   bcс -ml <исходный файл>
Borland C++ 3.1   bcс -ml <исходный файл>
Sun Java 6.0   javac <исходный файл>

Это всё связано с механизмом проверки и оценивания решений участников олимпиады, который выглядит следующим образом:
1. Компиляция исходного текста программы.
2. Последовательное исполнение полученного exe-файла для файлов с входными данными, соответствующих тестам из набора тестов для данной задачи.
3. Сравнение результатов исполнения программы на каждом тесте с правильным ответом.

Данный механизм отлажен как на международном уровне (ACM), так и на Всероссийском, причём все эти действия выполняются автоматически (компиляция, запуск на тестах, отслеживание потребления памяти, тайм-лимитов).
И если среда программирования не может гарантированно создать исполняемый файл, то это проблемы этой среды и её использовать не будут УЖЕ только из этих соображений. Непонятно, почему «спутники в космос запускают», а нормальный линкер сделать не хотят.

Еще одно важное замечание: все среды используются в конфигурации «от разработчика», без каких-либо доработок – просто скачивается дистрибутив с официального сайта и устанавливается. Кроме того, какие-либо доработки явно запрещены – можно использовать только то, что поставляется в стандартном комплекте среды. Для BB придётся добиваться приведения в приличный вид компанией-разработчиком или (если позволяет лицензия) делать официальный fork, который будет признан мировым сообществом. Это к тому, что использование BlackBox.MGU с Olimp -> New Problem будет гарантированно вне закона.

Это если очень кратко. Следует учитывать, что это целый мир со своими правилами, под которые придётся подстраиваться (для того, чтобы провести в этот мир КП).


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

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Albertum писал(а):
Еще одно важное замечание: все среды используются в конфигурации «от разработчика», без каких-либо доработок – просто скачивается дистрибутив с официального сайта и устанавливается.


Ну, с учётом открытой лицензии ББ, никто не мешает назвать спец. сборку особым образом (например, Olympic CP), сделать специальный сайт под неё - и заявить разработчиком-владельцем продукта OCP (собранного из BB и распространяемого в открытых текстах) некую Olympic CP Group.

И всего делов.


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

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
Albertum писал(а):
Еще одно важное замечание: все среды используются в конфигурации «от разработчика», без каких-либо доработок – просто скачивается дистрибутив с официального сайта и устанавливается. Кроме того, какие-либо доработки явно запрещены – можно использовать только то, что поставляется в стандартном комплекте среды.


А можно выбирать из нескольких официальных версии (ну там Standard или Pro, например)?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 10:21 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Уговорить Oberon microsystems положить на своем сайте ChampionBB в пару М не должно быть проблемой.
Надо просто сделать эту самую ChampionBB.
----
Кстати, Александр Сергеевич когда-то предлагал просто взять компилятор XDS.
Этот вариант тоже надо бы обсудить.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 11:12 

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Илья Ермаков писал(а):
Ну, с учётом открытой лицензии ББ, никто не мешает назвать спец. сборку особым образом (например, Olympic CP), сделать специальный сайт под неё - и заявить разработчиком-владельцем продукта OCP (собранного из BB и распространяемого в открытых текстах) некую Olympic CP Group.

Примерно это я и написал:
Albertum писал(а):
или (если позволяет лицензия) делать официальный fork, который будет признан мировым сообществом.


Иван Горячев писал(а):
А можно выбирать из нескольких официальных версии (ну там Standard или Pro, например)?

Только то, что явно указанно, например, Visual C/C++ 2005 Express Edition.
Относительно Delphi: на время проведения туров компания Embarcadero бесплатно предоставляет временную лицензию на Delphi 7.0 Enterprise.

Info21 писал(а):
Надо просто сделать эту самую ChampionBB.

Вот именно.

Info21 писал(а):
Кстати, Александр Сергеевич когда-то предлагал просто взять компилятор XDS.Этот вариант тоже надо бы обсудить.

Да, нужно собрать все возможные варианты, чтобы можно было выбирать.

Лично я думаю, что не стоит ключевое слово Olimp или Champion выносить в название, а ограничиться скромным CommunityEdition.
Стратегически нужно выходить на международный уровень, чтобы среду можно было потенциально использовать и на финале олимпиады (в прошлом году в Болгарии платформой был Ubuntu).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 12:44 
Аватара пользователя

Зарегистрирован: Воскресенье, 08 Июль, 2007 00:38
Сообщения: 778
Откуда: Москва
Albertum писал(а):
2. Строка компиляции, для получения исполняемого файла
Пример:
Цитата:
Free Pascal 2.4: fpc <исходный файл>
Sun Java 6.0: javac <исходный файл>



Несколько моментов ускользнули:
1. Что конкретно понимается под исполняемым файлом? Может ли он быть на промежуточном языке? Есть ли требования к его формату? Можно ли создавать не один исполнимый файл, а несколько, наподобие одного *.exe и нескольких *.dll ?
2. Может ли использоваться какая-то среда времени исполнения (среда времени исполнения BlackBox, сборщик мусора, JIT-компилятор, .NET, Java-машина и т.п.), и каковы требования к этой среде ?
3. Зависит ли оценка олимпиадной программы от эффективности (скорости работы, используемых ресурсов) используемых средств разработки, среды времени исполнения и языка программирования?
4. Не возбраняется ли, если IDE будет содержать готовые шаблоны и средства для решения типичных олимпиадных задач? Есть ли какие-то требования к IDE?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 12:52 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Сергей Прохоренко писал(а):
Albertum писал(а):
2. Строка компиляции, для получения исполняемого файла
Пример:
Цитата:
Free Pascal 2.4: fpc <исходный файл>
Sun Java 6.0: javac <исходный файл>

Несколько моментов ускользнули:
1. Что конкретно понимается под исполняемым файлом?
Думал, я один такой ... непрофессионал :)

От московских организаторов мне разъяснений получить не удалось. Может, тут получится.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 13:18 

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Сергей Прохоренко писал(а):
Несколько моментов ускользнули:
1. Что конкретно понимается под исполняемым файлом? Может ли он быть на промежуточном языке? Есть ли требования к его формату? Можно ли создавать не один исполнимый файл, а несколько, наподобие одного *.exe и нескольких *.dll ?
2. Может ли использоваться какая-то среда времени исполнения (среда времени исполнения BlackBox, сборщик мусора, JIT-компилятор, .NET, Java-машина и т.п.), и каковы требования к этой среде ?
3. Зависит ли оценка олимпиадной программы от эффективности (скорости работы, используемых ресурсов) используемых средств разработки, среды времени исполнения и языка программирования?
4. Не возбраняется ли, если IDE будет содержать готовые шаблоны и средства для решения типичных олимпиадных задач? Есть ли какие-то требования к IDE?

1. Исходя из существующего положения - это либо отдельный исполняемый (.exe) файл, либо файл .class, полученный путем компиляции из одного текстового файла. Т.е. вопрос, в принципе, обсуждаемый.
2. Т.к. в списке есть Java, то логично, что используется JVM. Запуск решения в этом случае осуществляется при помощи команды java <имя класса>. Аналогично.
3. Есть ограничения по времени компиляции, размеру исходного файла, объему потребляемой памяти (обычно 64 Мб) и времени исполнения (обычно 2 секунды). Данные ограничения одинаковы для всех, вне зависимости от используемой среды и языка программирования.
Пример:
Цитата:
В тексте условия указываются максимальное время работы программы и размер доступной программе памяти. Временем работы программы считается суммарное время работы процесса на всех ядрах процессора. Память, используемая приложением, включает всю память, которая выделена процессу операционной системой, включая память кода и стек.
Размер файла с исходным текстом программы не должен превышать
256 Кбайт, а время компиляции программы должно быть не больше одной минуты.

4. Запрещено. О каких-то дополнительных требованиях к IDE не знаю.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 13:41 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
Делать специальный Olympic Edition - это наглость. Поэтому предложение:
Договариваемся с OMS, и выкладываем BB Community Edition (вроде общественная разработка под эгидой ОМС) в трёх версиях - Стандартной, Школьной и Институтской. При этом для олимпиад можно использовать Стандартную или Школьную (скорее Стандартную, если ограничение по дополнительным инструментам)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 13:47 

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Иван Горячев писал(а):
Делать специальный Olympic Edition - это наглость. Поэтому предложение:
Договариваемся с OMS, и выкладываем BB Community Edition (вроде общественная разработка под эгидой ОМС) в трёх версиях - Стандартной, Школьной и Институтской. При этом для олимпиад можно использовать Стандартную или Школьную (скорее Стандартную, если ограничение по дополнительным инструментам)

Поддерживаю. Такое решение кажется мне оптимальным. Плюс сохранить интерфейс и справку на английском языке, хотя бы в Стандартной версии для международного распространения и использования.


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

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
Само собой. Стандартная версия - это просто все патчи + русификация + консольный компилятор


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

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1428
Сергей Прохоренко писал(а):
Несколько моментов ускользнули:

я бы ещё добавил:
Что конкретно понимается под текстовым файлом?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 16:13 

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Иван Горячев писал(а):
Само собой. Стандартная версия - это просто все патчи + русификация + консольный компилятор

Без русификации интерфейса и справки (лучше многоязычный интерфейс и справка, но английский - по дефолту).

Trurl писал(а):
Сергей Прохоренко писал(а):
Несколько моментов ускользнули:

я бы ещё добавил:
Что конкретно понимается под текстовым файлом?

Хм... Как-то так: http://ru.wikipedia.org/wiki/Текстовый_файл
Цитата:
Те́кстовый файл — разновидность файла, содержащая текстовые данные, как правило организованные в виде строк. Текстовый файл, как и прочие файлы, хранится в файловой системе.
...
Текстовым файлам противопоставляются двоичные (бинарные) файлы, в которых информация организована по иным принципам.
...
Формат текстового файла крайне прост, и его можно изменять текстовым редактором — стандартной программой, присутствующей во всех ОС.
...
Текстовые файлы, особенно если речь идёт об однобайтных кодировках вроде ASCII, не подвержены многим проблемам, характерным для других форматов файлов. Так, для них не важна разница в порядке байтов или длине машинного слова на разных платформах.


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

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
Albertum писал(а):
Trurl писал(а):
я бы ещё добавил:
Что конкретно понимается под текстовым файлом?

Хм... Как-то так: http://ru.wikipedia.org/wiki/Текстовый_файл
Цитата:
Текстовые файлы, ... речь идёт об однобайтных кодировках вроде ASCII...
Конкретно: ASCII? (не расширенный, 0..127)


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

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Иван Горячев писал(а):
Делать специальный Olympic Edition - это наглость.
Да почему же.
BlackBox Express Edition, которая просто делает exe из текста модуля.
Подразумевая текстовые данные на входе и текст на выходе.

Чем не инструмент. Не хуже машины Тьюринга.

Иван Горячев писал(а):
в трёх версиях - Стандартной, Школьной и Институтской.
А вот это вряд ли выйдет. Слишком сложно, и слишком обязывающе для Ominc.


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

Зарегистрирован: Пятница, 29 Январь, 2010 17:03
Сообщения: 26
Откуда: Астрахань
Евгений Темиргалеев писал(а):
Albertum писал(а):
Trurl писал(а):
я бы ещё добавил:
Что конкретно понимается под текстовым файлом?

Хм... Как-то так: http://ru.wikipedia.org/wiki/Текстовый_файл
Цитата:
Текстовые файлы, ... речь идёт об однобайтных кодировках вроде ASCII...
Конкретно: ASCII? (не расширенный, 0..127)

Не важно. На Windows платформе многие привыкли к кодировке 1251. Но можно ориентироваться и на юникод.
В олимпиадных задачах я ни разу не встречал требования вывода/ввода на языке отличном от английского.
На родном языке разве что комментарии к решению писать.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 17:08 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
Info21 писал(а):
BlackBox Express Edition, которая просто делает exe из текста модуля.
Подразумевая текстовые данные на входе и текст на выходе.

Тут не только компилятор нужен, а ещё и набор модулей для быстрой работой с текстовыми файлами как минимум. Да и про среду не надо забывать. Тогда уж надо делать консольный компилятор и уговаривать швейцарцев включить его в ББ.

Цитата:
А вот это вряд ли выйдет. Слишком сложно, и слишком обязывающе для Ominc.

Ну так оно уже по факту есть. От ОМС только высочайший одобрямс нужен.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 31 Январь, 2010 17:59 
Аватара пользователя

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


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

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


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

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


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

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