Краткая история программы POPEYE1

— Томас Бранд

(Перевод на русский язык: Дмитрий Туревский. Впервые опубликован в журнале “Шахматная Композиция”, №114 – 2013)

____________________________________________________________________

Чтобы рассказать историю программы POPEYE нам придется вернуться назад более чем на четверть века, в год 1986. Я тогда был редактором в «Die Schwalbe» и отвечал за разделы обратных и кооперативных матов, поэтому компьютерная проверка присланных для публикации оригинальных задач интересовала меня еще как.

В те времена было всего два способа проверить кооперативные, обратные и кое-какие сказочные задачи: платная программа Alybadix, написанная Илька Блёмом, которая работала на небольших домашних компьютерах типа Commodore, и Ollie Томаса Кюна, которая запускалась на специально собранном исключительно для этой цели (!) устройстве с шестнадцатеричной клавиатурой и забавным вроде как принтером для термобумаги – для ввода задач и отображения авторских и побочных решений, соответственно.

Поскольку у меня дома был «современный» IBM XT совместимый компьютер (процессор Intel 8086 6MHz, 20 MB места на жестком диске, монохромный черно-зеленый дисплей с разрешением 25х80 знакомест, все собрано вот этими руками), то … запустить Alybadix возможности я не имел. А работа с Ollie была не такой простой, как это может показаться сейчас: проверка сложной позиции с заданием h#2 занимала до часа, а проверить h#3 возможности практически и не было. А поскольку Ollie еще и существовал в единственном экземпляре, то машинное время (и время Томаса тоже) приходилось делить с другими людьми. Так что я пытался найти побочные решения в задачах, присланных для «Die Schwalbe», самостоятельно, и только в особых случаях, когда мне все-таки не удавалось их обнаружить, я подключал Томаса с его транзисторным приятелем.

Так что, когда я услышал о POPEYE, программе написанной Филлипом Шобеленом из Франции для IBM PC, я несказанно обрадовался: может быть, вот оно – моё избавление?

Я связался с Филлипом (при помощи обычного письма, разумеется, век электронной почты еще не наступил!), и очень быстро, всего около недели спустя, получил здоровенный конверт из Франции, в котором был не только любезный ответ, но и дискета (гибкая и большая – пять с четвертью дюймов, на 360 килобайт – стандарт по тем временам) на которой был записан POPEYE и короткая инструкция по-французски. И всё работало!

После определенного периода работы с программой у меня появились некоторые соображения относительно ее улучшения, которыми я поспешил поделиться с Филлипом, но получил весьма неожиданный ответ: он сообщил, что прекратил разработку POPEYE, а также выслал мне исходный код программы на условиях использования его как общественного достояния.

Это привело к тому, что я немедленно сделал две вещи. Во-первых, я написал в «Die Schwalbe» небольшую статью2 с предложением выслать POPEYE всем заинтересованным проблемистам, при условии, что они пришлют мне сначала дискету (не забывайте: дело было до популяризации интернета и электронной почты). В итоге отозвалось где-то около 30 человек.

А во-вторых, и это было еще важнее, на встрече в Андернахе в 1987, если память меня не подводит, я поговорил о POPEYE с Эльмаром Бартелем и Норбертом Гайсслером. Дело в том, что хотя у меня и был исходный код POPEYE, в который я внес свои исправления и улучшения, но программы-компилятора, которая создала бы из исходного кода исполняемый файл, у меня не было – POPEYE был написан на диалекте языка Паскаль под названием COMAL. Они взяли исходный код и, отчасти вручную, отчасти автоматизировано, переписали POPEYE на язык программирования Си.

После долгого процесса настройки и подгонки им удалось снова получить работающую программу: поддерживаемую, неплохо документированную и более быструю, чем изначальная реализация на COMAL. Так было положено начало непрекращающемуся развитию POPEYE.

Оно шло (и по-прежнему идет!) по разным направлениям:

  • Исправление ошибок, разумеется
  • Расширение возможностей путем добавления новых сказочных условий, фигур и заданий.
  • Портирование для разных аппаратных платформ и операционных систем, существовали версии для OS/2, VAX VMS, IBM MVS, SIEMENS BS2000. На данный момент официально поддерживаются версии для Windows, MacOS и Linux/Unix.
  • Улучшение быстродействия путем реализации разнообразных оптимизированных алгоритмов: например, таблиц транспозиций и «Intellegent mode» для многоходовых задач.

Пока я только упомянул Филлипа, Эльмара и Норберта, как наиболее важных разработчиков раннего POPEYE, также к ним нужно добавить Торстена Линсса, который проделал немало работы. Еще нужно не забыть Стефана Хёнинга, Стефана Брунцена, Харальда Денкера и Томаса Барка. В наши дни (т.е. начиная с июля 2007г) проект POPEYE ведет Томас Мэдер, которому помогает Стивен Эммерсон.

Когда ждать новую версию POPEYE? Я бы сделал ставку на середину мая – начало июня3, время проведения встречи в Андернахе! Все почти так же, как и 25 лет назад, но с одним исключением: теперь POPEYE можно просто скачать в интернете, а присылать дискеты вовсе не обязательно.

__________________

1Попáй (от англ. pop eyed, букв. «пучеглазый») – персонаж популярного американского комикса и, позднее, мультипликационного фильма. 

2«Die Schwalbe» №104, апр. 1987, стр. 215 – 216, «Popeye, eine eierlegende Wollmilchsau?» (нем. «Popeye, на все руки мастер?»)

3Последняя версия POPEYE – 4.63 вышла 5-го мая 2013г.


Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments