
Знаете ли, есть такие трансляторы, своего рода переводчики… Вы знакомы с системами счисления? Нет? Жаль. Ну, хотя бы римские цифры вам известны? Уже хорошо… Вот, представьте себе, вам необходимо сделать перевод чисел из системы римских цифр в десятичную. Что вы делаете? Рисуете таблицу, в которой каждой римской цифре соответствует десятичная. Надо сделать перевод — находите римскую цифирь, и рядышком в ячейке читаете соотносящуюся ей десятичную. Просто? Да. В программе-переводчике с одного языка на другой дело обстоит подобным же образом, только значительно сложнее. Поскольку почти повсеместно одному конкретному слову имеется соответствие нескольких иностранных, в зависимости от контекстного понятия. Многие слова к тому же имеют разный смысл при одинаковом написании и звучании. Пример тому: коса — коса, лук — лук, соль — соль, и так далее. И всё это надо учитывать. А ко всему есть ещё много прочих нюансов, как то — профессиональный сленг и различные диалекты. Правда, большинство этих задач уже давно и успешно решены. Это я вам привёл лишь в качестве показательного примера, для понимания сути работы моего транслятора.
Принцип её работы схож с работой программ-переводчиков, только вместо слов иностранного языка мной были выбраны распространённые фразы и выражения из лучших фэнтазийных произведений, как отечественных, так и зарубежных. Эту программу я писал несколько лет. Несколько раз отказывался, но затем приступал к ней вновь. Мучался страшно, даже бросил курить…
И вот однажды, наконец, я сказал себе — всё, работа над программой кончена! Настало время проверить её в деле. Я проверил её, и она превзошла все мои самые смелые ожидания…
Он глубоко задумался, глядя в туманную даль мокрого осеннего редколесья, внезапно проступившего в разрыве лесных стен, бесконечно тянущихся вдоль железнодорожного полотна. Глаза его застыли, и рот слегка приоткрылся. Я выждал пару минут, затем вежливо кашлянул. Он очнулся от сонма владевших им мыслей и, со вздохом, продолжил: