Еще не поздно 1-5 (версия 2012 года) - Павел Владимирович Дмитриев
— Так ведь копировать IBM 360 хотят как раз с целью получения англоязычного софта.
— Академикам можно, — явил чудо начальственной лапидарности Александр Николаевич. — Тебе нет.
М-да! Я скорчил страшную гримасу, благо по телефону не видно. Однако вслух, понятное дело, отреагировал совсем по-иному:
— Команды в Баголе можно поменять на русские в течение пары дней. Синтаксис это не изменит, так что…
— Так почему вы сразу этого не сделали?! — Кажется, Шелепин разозлился не на шутку.
— Систему готовили на экспорт, товарищ Шокин говорил, что видит по «Орионам» очень хорошие перспективы. — Я поспешно перевел стрелки, пока не стало слишком поздно. — Наши же специалисты все равно привыкли работать с англоязычным софтом.
— На экспорт, говоришь… — Послышался тихий стук, я сразу представил, как пальцы президента барабанят по лаковой глади необъятного стола. — А какая проблема сделать два языка?
Смешно, но такая мысль просто не приходила в голову ни мне, ни Старосу, ни вообще кому-либо из занятых в проекте «Багол». Священная корова совместимости «всегда и везде» казалась важнее всего остального, а англоязычный синтаксис виделся единственным логичным решением для языка программирования. Наверное, если бы Филипп Георгиевич сразу затеял кампанию по проталкиванию нужной идеи в советском партхозактиве, вопросов не возникло бы. Но в КБ-2 понедельник реально начинался в субботу, люди работали, а не плели кружева интриг. Вот только все это не повод тупо расписываться в собственной недогадливости!
— В теории можно, — я не стал возражать прямо. — Но тексты программ станут непереносимыми, в смысле нельзя будет на экспортное устройство загрузить отечественную программу.
— А зачем нам тексты? В машинных кодах можно переносить что угодно и куда угодно! — неожиданно по делу возразил Александр Николаевич.
«Надо же, хоть и коммунист, а разбирается!» — невольно восхитился я. Вернее, его кто-то здорово проконсультировал, потому что…
— Это не совсем верно, — ввернул я аргумент. — Для «Орионов» пока нет программ-трансляторов, а значит, нет возможности формировать пользовательские программы в машинных кодах. — Я машинально скрестил пальцы: надеюсь, никто не успел объяснить моему куратору, что такое положение ненадолго. — Разумеется, можно использовать какую-то другую ЭВМ, но… Если рядом будет стоять два разных «Ориона», для переноса код придется переписывать вручную.
— Неудобно, — подозрительно легко согласился Шелепин. И добавил очень просто и серьезно: — Но тебе придется что-то придумать прямо сейчас.
Кажется, я понял, у кого учились искусству «наездов» братки шальных девяностых. Разум мгновенно дал сигнал, что в конечном итоге Александр Николаевич прикроет от этой напасти и меня, и Староса, и проект «Орион». Слишком много сил он во все это вложил, чтобы из-за такой мелочи начинать проводить репрессии направо и налево. Но сфинктер все равно сжимался, да и просто было обидно!
Пытаясь решить проблему, я начал перебирать в уме все, что знал о программировании в будущем. И…
— Бинго! — едва не закричал в полный голос. — Нашел вариант! — не слыша возражений, начал развивать мысль. — Есть программа для бухгалтерии, 1С, я про нее с самого начала в своих «записках попаданца» писал. Так вот, в ней разрешено использовать хоть русский, хоть английский синтаксис и вроде бы даже одновременно. Если подобное сделать на «Орионе», можно будет операторы писать хоть по-итальянски, хоть по-немецки. Имена переменных тоже, даже через букву латиницей-кириллицей. Конечно, памяти потребуется немного поболее, а еще у них всякие умлауты[1354] есть… Но интерпретатор живет в ПЗУ, это уже не критично, а без точек и крышечек над буквами европейцы как-нибудь перебьются первое время.
— Можешь, когда хочешь! — подобрел голос Шелепина, красавец просто, добрый и злой следователь в одной тушке. — А чего ж ранее-то не предложил? Старос куда смотрел?
— Не подумал, — замялся я. — Английский такой простой!
На той стороне линии послышался хрип. Как бы беды не вышло…
— Ладно! — спустя некоторое время продолжил Александр Николаевич. — С тобой и Филей… Филиппом все понятно. А вот куда смотрел Шокин… — продолжил Шелепин, говоря, по сути, сам с собой. Потом спохватился: — Как, говоришь, все это можно назвать?
— Э-э-э… — замялся я, — может быть, мультилингвистический язык Багол?
— Пойдет! — выдал окончательное решение президент.
И отключился, не сказав ни спасибо, ни до свидания.
…Самым забавным стало то, что внедрение нескольких языков оказалось до смешного простым делом. Код программы для сокращения объема хранился в ОЗУ совсем не в том виде, как набирал с клавиатуры программист, а только после обработки специальной программой-препроцессором. К примеру, введенный оператор PRINT в память записывался парой символов, к примеру «@Х». Небольшое изменение, и… Оператор ПЕЧАТЬ или DRUCKEN превращались в точно такой же «@Х»! При выводе на экран или на «Консул» производилась обратная операция — естественно, с учетом заранее выбранного региона. Таким образом, написанный на русском софт после вывода на магнитный диск «Спирали-3» и последующего считывания «Орионом» с экспортной ПЗУ отображался на экране с английскими (немецкими, французскими или еще какими-нибудь) командами и аргументами функций.
Выходило очень красиво политически, вот только никаких реальных бонусов не давало. Причина в названиях переменных и комментариях. Они оставались в неизменном виде и после переноса на другой язык превращали текст программы в по-прежнему работающее, но трудночитаемое месиво. Что до меня, так идея «программирования по-русски» немилосердно резала глаза несогласованными падежами, и вообще, получилось глупо и неудобно. Более того, большинство знакомых мне программистов продолжали использовать в работе англоязычную транскрипцию.
Впрочем, не все было плохо. Первые же внедрения техники показали, что простые инженеры относятся к командам на родном языке куда более лояльно, чем профессионалы. Это даже повлекло за собой одно весьма неочевидное следствие. А именно для распечатки текста теперь годилась любая электрическая пишмашинка со стандартной русской раскладкой, лишь бы только ничего не мешало «подпаять контакты». Сначала я полагал, что наконец-то вместо двуязычных, а значит, не имеющих маленьких русских