Первоапрельская шутка
Прихожу как-то утром на работу в Институт.
Как обычно, сразу направляюсь к вычислительному центру, расположенному на первом этаже нашего здания. У нас было принято оставлять свои программы для расчётов на ЭВМ в вечернюю и ночную смену. ЭВМ работала круглосуточно.
Вижу – на двери компьютерного центра висит объявление, напечатанное крупными буквами. Читаю:
ОБЪЯВЛЕНИЕ
Уважаемые товарищи программисты!
Сообщаем Вам, что с 1-ого апреля с.г. идентификаторы «I», «J», «K», «L», «M», «N» циклических расчётов, резервируются в технических целях. Использование их в прикладных программах пользователей запрещается и системой трансляции программ они будут восприниматься как ошибка!
Убедительная просьба внести соответствующие изменения в программные продукты.
С уважением, администрация вычислительного центра.
Ни фига себе! Да ведь все циклы в моих программах используют именно эти буквы! Запрет на их применение практически означал переделку всех программ. Кроме того, в семидесятых годах прошлого века, о которых идет речь, вся информация - и программы и данные к ним, вводились в ЭВМ с перфокарт. Объявленный запрет означал не только переделку вех программ, но и заново перебивку всех содержащих их перфокарт. А это вызывало дополнительные сложности, поскольку в процессе набивки карт часто возникали ошибки. Для чего же потребовался этот запрет стандартно и широко используемых символов? Просто вредительство какое-то!
Взбешённый, не дожидаясь лифта, взбегаю на свой восьмой этаж. И, не здороваясь, с порога начинаю излагать своё возмущение этой жуткой новостью всем присутствующим в комнате. Моя злость и возмущение были горячо поддержаны всеми коллегами.
Однако, один из них напряг свой мозговой аппарат и высказал предположение, что не шутка ли это первоапрельская?
Только тут до меня дошло, что не случайно в «Объявлении» указывалась дата начала этой экзекуции с 1-ого апреля.
Ух!!!
Хорошо, что я не додумался пойти жаловаться в дирекцию, как это сделало несколько молодых аспирантов.
Автором шутливого объявления был руководитель группы программного обеспечения нашего ВЦ Борис Юльевич Левит.
Шутка удалась.
Вот столько десятков лет прошло с тех пор, а я эту шутку и свою реакцию на неё хорошо помню.
На фото из личного архива: автор шутки – Борис Юльевич Левит
P.S. Я предполагаю, что большинство читателей, посетивших эту публикацию, понятия не имеют о программировании в те, достаточно уже давние, времена. И это вполне нормально.
Вообще программа представляет собой последовательность арифметических и логических операций, которые надлежит выполнить для получения искомого результата. Позволю себе дать некоторые пояснения на небольшом житейском примере.
Допустим, у меня есть данные об уплате по месяцам за воду и электроэнергию. А мне хочется знать – сколько всего я платил за эти услуги каждый месяц.
Представьте себе двухмерную обычную табличку, содержащую 12 строк и четыре столбца. В первом столбце (А) в каждой из 12 строк занесены название месяцев Во втором (B) и в третьем (C) столбцах содержится информация соответственно о платежах за воду и электроэнергию по месяцам. В четвёртом столбце (D) разместим рассчитанную на ЭВМ сумму этих платежей за каждый месяц.
На широко распространённом в то время языке программирования «PL-1» эта программа содержала бы всего один цикл расчётов:
For I=1 to 12;
D(I)=B(I)+C(I)
End;
Вот и все дела. Можно распечатать эту информацию, или сохранить её на каких-то носителях.
Сложные программы содержат, как правило, множество циклов расчётов. В один цикл частенько встроен другой цикл и так далее. Языки программирования, используемые в то время, были созданы в основном англоязычными специалистами. Поэтому все они основывались на латинском алфавите. И так уж повелось, что именно перечисленные буквы многих программистов являются наиболее ходовыми. Этим и объясняется моё искреннее возмущение о необходимости переделки программ и перебивки практически всех перфокарт.
Свидетельство о публикации №223040100166
До новых, интересных встреч и Здоровья! Мира! Добра!
Виктор Ардашин 04.04.2025 05:57 Заявить о нарушении