Программист | страница 38
Я работаю с ТК-2, последним законченным вариантом транслятора. Вариант-то законченный, но использовался только на сравнительно простых, типовых задачах, в основном вычислительного характера. В моей программе вычислений почти нет, информация подвергается в основном логической обработке. Программа к тому же большая, сложная. Вот и получилось, что, как только я начал использовать ТК-2, из него сразу полезли залепы и несообразности. Это не значит, конечно, что ТК-2 — халтура.
Просто такую громадную систему программ, как транслятор, невозможно сделать без ошибок. Причем самых разнообразных. Часть из них была, конечно, выловлена на типовых вычислительных задачах. А более глубокие возможности транслятора так и остались необкатанными. Вот мне и пришлось обкатывать их на своей программе.
Я запускаю программу и гоню ее до тех пор, пока она делает то, что нужно. В каком-то месте начинает получаться ерунда. Машина начинает «сходить с ума» и печатает на алфавитно-цифровом печатающем устройстве (АЦПУ) всякую дребедень. Тогда я останавливаю машину и начинаю ловить ошибку. Надо найти то место, ту команду, начиная с которой программа ведет себя неправильно. Когда ошибка найдена, надо понять ее. Здесь могут быть два варианта: или это моя собственная ошибка, ошибка в моем алгоритме, или это ошибка, «залеп» (одно из шикарных словечек зубров программирования) в трансляторе. В первом случае я исправляю неправильное место в своем алгоритме, отдаю перфоленту с программой в телетайпную, чтобы мне ее перебили по новой, и жду следующего выхода на машину. Ну а если ошибка в трансляторе, я здесь сделать ничего не могу. Не могу нн поправить ошибку, ни даже найти ее. Транслятор для меня (так же, как и для всех, кто им пользуется) — черный ящик. Я только знаю, как им пользоваться, а как он устроен, не знаю. Это знают только те, кто его делал. И лучше всех знает Стриженов. К нему я и иду в таких случаях.
Григорию Николаевичу весьма полезно, что я хожу к нему с ошибками. Ведь этим я помогаю ему доводить ТК-2 до кондиции. Да н мне самому это небезынтересно. Моя работа получает некий теоретический, исследовательский привкус. А уж о благородстве такого занятия нечего и говорить. Ведь исправления вносятся, разумеется, не только в мой личный экземпляр ТК-2. Стриженов передает исправление в эталонный текст транслятора, хранящийся в Библиотеке стандартных программ при ЦСУ СССР. А с эталонного текста дублируют транслятор все, кто пользуется им у нас в стране. Поэтому на залеп в трансляторе, на который наткнулся я и который задержал мою работу, не наткнется уже больше никто. Вот какое это благородное и интересное занятие.