Читаем Плоды релиза Победы 1948 (СИ) полностью

Всё было просто, верно и красиво. И убыстряло процесс программирования «в машкодах» (точнее, уже действительно на ассемблере-автокоде)

И параметры железа (объём ОЗУ) вполне позволяли..

Но!

Мы должны были решить сразу дилемму:

Пытаемся ли мы с нуля «прогнуть» будущий мир прогеров учить русский..

..и вместо привычного МНЕ LD (то бишь LOAD) писать ЗГ (ЗАГРУЗИТЬ)?

Ну и далее, определиться с этим вопросом так со всем ПО для разработчиков и юзеров!

т.е

LD A,3

или

ЗГ A,3 (тут ещё вставал вопрос об LAT/РУС для наименований тех же регистров АЛУ.. как и для переменных типов данных и прочего в текстах программах..)

Логика, которую отстаивал я, заключалась в следующем:

Советское, конечно, СЕЙЧАС, реально самое передовое, но западный мир мы можем и не прогнуть. Они очень быстро напишут своё. Ломать доминирование латиницы множества стран, даже в отдельной отрасли — ИТ, и при использовании всех бонусов послезнания и в попытке навязывания своих стандартов, всё равно будет трудновыполнимым желанием..

Лучше, раз уж мы «вшили» (в отличие от истории моего прошлого) в «Стандарт 256» и LAT, и РУС, то дадим возможность и в ассемблере и в базовом языке программирования высокого уровня имени Ады Лавлейс (т.е. «бейсике») юзать и русские команды и на латынице.

Как и в командной строке ОС и во множестве аналогичных тем!

Т.о., на софте М-4 предлагалось продолжить логику, заданную в «бумажном варианте» ассемблера-автокода для М-1/2/3. Как в нормальной, уже не в «бумажном варианте», программе автокода-ассемблера с равноценными по правам мнемониками на русском и латинице(английский), транслируемыми в соответствующий каждой двуязычной паре мнемоник машинный код.

Вот эту логику (с пояснением — мы даём свободу выбора всем — пользователям и программистам СССР, пользователям и программистам «наглосаксонских капиталистов») я и излагал на совещании в наркомате на исходе 1944-го, уже не только применительно к автокоду, но и к первому «комфортному языку программирования», доступному обычным рядовым пользователям, а не только тем уникальным человеческим экземплярам, кто сами машинные коды М-1/2/3 (с расширением «до стандарта Z80» в М-4) в своей памяти держит:

Маленков, «понавтыкавшийся» в реалиях зари цифровой эры и усвоивший по необходимости (партия поставила на важнейший участок!) многие специфические понятия как и текущие ограничения, поинтересовался на примере как раз обсуждавшегося как «образец» «первого местного» языка программирования высокого уровня — «бейсика»:

— А места в ПЗУ хватит для двух.. «наборов»?

— Да! Наш диалект первого «ЯПВУ» будет содержать 80 операторов — команд и функций и нескольких дополнительных ключевых слов длиной от 2 до десятка байт. Просто удвоится это число. И несколько усложнятся процедуры редактирования и выполнения при интерпретации. Чуть-чуть больше потребуется места в ПЗУ для вывода интерпретатором кодов ошибок и текстов сообщений. Сами же процедуры и функции, соответствующие операторам языка, останутся одни и те же для обеих наборов операторов. Такая же приемлемая ситуация будет с двумя наборами команд ОС, с мнемониками ассемблера и прочим..

После нескольких оценочных подсчётов для разных случаев на том и пришли к общему знаменателю, который выразился в приказ по наркомату «О двуязычном стандарте команд и операторов ПО», который позже многими (особенно в США и в Европе) трактовался как «второе, после Стандарта 256, удачное решение коммунистов для получения дополнительных рыночных преимуществ».

Стоит отметить, что имена переменных, массивов и т.п. жёстко привязывались к латинице с мотивировкой «по подобию греческого алфавита в математике».

На примере того же местного «бейсика», это привело к тому, что работал как текст программы, очищавшей экран и печатавший пять строк с текстом «test» («тест») в «классическом для моего прошлого» виде:

10 cls

20 for i=0 to 4

30 print “test”

40 next

так и «русифицированный» для той же цели и с тем же результатом:

10 очэ

20 для i=0 до 4

30 печат “тест”

40 след

Можно было получить верный итог, и набрав «совсем ужасное»:

10 cls

20 для i=0 до 4

30 print “test”

40 след

Интерпретатору было всё равно. Хотя у моего сознания, с вбитым в подкорку англоязычным написанием синтаксиса языков программирования, подобный «руглиш» вызывал лёгкий приступ смеха. Как и второй вариант, м.п. В моём прошлом в этой сфере человеческих достижений наглосаксонская soft power победила безоговорочно. Здесь же.. мы пытались установить истинное равновесие и полную свободу выбора.

* * *

Замечу, что с моей точки же зрения, версия 1.0 нашего «бейсика» (пока без графических возможностей) была плодом скрещивания, «урезания хотелок» и «вдохновения момента первого творения» от двух диалектов basic — MSX и Sinclair (с нормальным посимвольным вводом текста исходной программы в редакторе интерпретатора, без ужасной привязки ввода операторов как у второго — «целыми словами» и путём нажатия соответствующих клавиш).

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже