spamsink: (Default)
[personal profile] spamsink
Жил-был в Калифорнии один хороший мужик, по имени Чарльз Уэзерелл, который в молодости, лет 40 с небольшим назад, решил написать книгу "Этюды для программистов" (обратите внимание на цену - нынче библиографическая редкость) с набором не очень простых на то время заданий, на выполнение которых предполагалось от недели (например, написать программу, печатающую собственный текст) до месяца (например, написать компилятор с простенького языка программирования).

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

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

Неординарность книги создала определенные трудности при ее переводе. В каждой главе — своя тема, своя ситуация. Рассматривая ситуации, автор не связывает себя формальными рамками, да и самим ситуациям, заимствованным из американской жизни, не всегда находятся аналоги в нашей действительности. Переводчикам Н. И. Вьюковой, В. А. Галатенко, А. О. Лацису, А. Н. Полюдову и А. Б. Ходулеву помимо обычной переводческой деятельности пришлось заняться исполнительской практикой: некоторые этюды были проиграны, у некоторых проверены приведенные ответы. Там, где это необходимо, были даны примечания или добавлены партии переводчика, а библиография дополнена изданиями, доступными советскому читателю.


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

...Ничего не вышло. Увы, "ключ не подходит потому, что он от другого замка", как они мягко сформулировали в "партии переводчика". Мистер Уэзерелл зашифровал текст одним способом, а описал метод расшифровки для слегка другого. Алгоритм расшифровки пришлось слегка усложнить, но и тогда результаты получались хоть и более похожие на человеческий язык, но всё равно не в лучшем виде, с кучей ошибок, а часть текста вообще была мусором. Выяснилось, что в тексте шифровки, приведенной в книге, пропущена одна строка, количество букв в которой не кратно длине ключа, поэтому статистический алгоритм давал сбой. Эту нелестную для издателя деталь переводчики великодушно решили в книге не упоминать.

После компенсации этой неприятности всё пришло в норму, плюс-минус некоторое количество одиночных опечаток, и оказалось, что зашифрованы были всего лишь несколько абзацев из главы с заданием написать компилятор, а ключом служило, довольно логично, слово COMPILE.

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



И вот, все те советские и российские любители этюдов для программистов, которые взяли на себя труд исполнить этот этюд, тоже испытывали смесь удовольствия от решения задачи и разочарования, что ничего нового там не написано, но и недоумевали, почему же текст про компилятор зашифрован словом "РЕДИСКА".

Но мы-то теперь понимаем!

Date: 2019-03-12 08:38 am (UTC)
vak: (Default)
From: [personal profile] vak
Уэзерелл - нехороший человек! :)

Date: 2019-03-12 03:34 pm (UTC)
erin_karsa: (Default)
From: [personal profile] erin_karsa
Шикарная история! Спасибо!

Date: 2019-03-13 02:35 pm (UTC)
dluciv: (Default)
From: [personal profile] dluciv
Чудесно!

Date: 2019-03-14 08:05 am (UTC)
lxe: (Default)
From: [personal profile] lxe
Можно было б, не знаю, "ТЬЮРИНГ".

Profile

spamsink: (Default)
spamsink

June 2025

S M T W T F S
1 2 34567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 5th, 2025 09:19 am
Powered by Dreamwidth Studios