Проект «Сфера-82»: Цвет и слой - Станислав Миков
— А дальше, через десятилетие с лишним, появится язык Джава, а за ним Си-шарп. Их придумают для других задач. Они будут работать поверх гигантских мировых сетей, связывая между собой огромные вычислительные центры банков, заводов и корпораций. Там главная задача — чтобы программа, написанная на одном конце света, гарантированно запустилась на любом железе на другом конце.
— Машинная независимость в квадрате, — усмехнулся Громов. — А еще?
— А еще Джава станет основным языком для тех самых карманных машин с триллионами байт, про которые я тебе зимой рассказывал.
Громов замер.
— Для аппаратов с экраном, картой города, библиотекой и фотоаппаратом?
— Да. И забавно то, что в моем времени этот вычислительный монстр в кармане всё еще по привычке будут называть просто «телефоном». Хотя, учитывая, сколько туда напихали процессоров, памяти и датчиков, от первоначального телефона там осталось только название. Впрочем, звонить он тоже будет уметь.
Громов потер лоб.
— Я в некотором замешательстве, Лёша. Выходит, изучая этот ваш Си сейчас, я заодно учу половину языков будущего?
— Синтаксис и логику чтения — да.
— Ладно. А как же Бейсик? Мы ведь только-только продавили МикроБейсик для школ как универсальный входной билет для новичков. Он тоже умрет?
— Бейсик умрет, — спокойно кивнул Морозов. — Он выполнит свою историческую миссию: покажет людям, что с машиной можно говорить по-английски, а не кодами. И уйдет. Для школьников, студентов и ученых появится другой язык с очень низким порогом вхождения. Он называется Питон.
— Питон, — эхом повторил Громов. Названия из будущего начинали звучать как издевательство. — И в чем его сила?
— В том, что он прячет от человека вообще всю физику машины. Там нет типов переменных, которые ты задаешь заранее. Нет ручного выделения памяти. Нет фигурных скобок для блоков — блоки выделяются просто отступами на странице. Пишешь: `х равно списку чисел`, потом `напечатать сумму х` — и он сам понимает, где взять память, как сложить и когда освободить место.
У Громова дернулась бровь. Как человек, привыкший лично контролировать каждый байт и следить за переполнением регистров, он испытал почти физическую боль.
— Он сам понимает, где взять память? Без моего приказа?
— Да. И сам ее за собой убирает. У него внутри работает автоматический сборщик мусора.
— И типы данных не проверяет при трансляции?
— Их можно менять прямо на лету. В одной строке `x` — это число, в другой — строка текста, в третьей — сложный массив данных.
Громов уставился на Морозова остановившимся взглядом.
— Лёша, это не язык программирования. Это анархия. Это поощрение умственной деградации! Человек же вообще перестанет понимать, сколько тактов и байтов он только что сжег одной строчкой! Да такой язык должен работать медленнее черепахи!
— Он и работает медленнее черепахи. По меркам Си или ассемблера Питон — это чудовищно прожорливый и медленный интерпретатор.
— Так зачем он нужен⁈
— Потому что время программиста станет дороже машинного времени, — жестко отчеканил Морозов. — В твоем времени машина стоит миллионы, а программист получает сто сорок рублей в месяц. В моем времени вычислительная мощность стоит копейки, а час хорошего разработчика — целое состояние. Питон позволяет ученому-физику, биологу или школьнику написать сложную программу за вечер, не тратя полгода на изучение того, как устроен стек и где происходит утечка памяти. Железо всё стерпит.
Евгений молча положил конверт с дискетой на стол. Повертел его, будто взвешивал новую неприятность, которая вдруг стала необходимой.
— Я недооценил этот ваш Си, — сказал он наконец, глядя на диск как на спасательный круг. — Если альтернатива — это анархия, где машина сама решает, когда ей убирать за мной мусор, я лучше буду писать на Си.
— Ты только начинаешь его оценивать. Так точнее.
— Хорошо. Тогда завтра вытащу из Беспалова всё, что у него есть: памятку, примеры, команды, что можно читать, чего нельзя трогать. И буду учить.
— Но ассемблер не забывай, он нам ещё долго нужен будет.
— Разумеется. Если этот ваш чайниковый язык переживет мои машинные коды, надо хотя бы узнать, за что такая честь.
Морозов поднял стакан.
— За чайники, значит.
— За чайники, — сказал Громов и впервые за весь вечер посмотрел на диск без раздражения.
Они посидели молча. За стеной Липатов аккуратно кашлянул, перевернул страницу и снова начал писать. В соседнем корпусе гудела вентиляция. На столе рядом лежали бумажная карточка формата обмена и скромный конверт с BDS C.
Громов открыл тетрадь и крупно написал: «Формат обмена СЛОЙ-81. Минимальная спецификация». Ниже вывел первую строку: «Заголовок: объект, слой, начало координат, единицы, записи, сумма, ответственные».
Он остановился, подумал и добавил еще одну строку: «До проверки геометрии проверить исходные данные».
На следующей странице он поставил отдельный заголовок: «Си. Разобраться. Написать пробную программу».
Глава 16
Телемастерская
Тугая пружина с грохотом захлопнула дверь, отрезав мастерскую от колючей январской улицы. Олег сдёрнул ушанку. У барьера приёмки толпилась мрачная очередь в массивных зимних пальто — люди ругались из-за сроков и караулили свои поставленные прямо на мокрый кафель неподъёмные ящики «Горизонтов» и «Рубинов».
За барьером кипела работа. На длинных столах стояли выпотрошенные телевизоры, тускло светились экраны осциллографов, громоздились стеклянные колбы извлечённых кинескопов. Помещение заполнял непрерывный технический гул: щелчки реле, вибрация понижающих трансформаторов и назойливый, режущий ухо высокочастотный писк работающих строчников.
Олег уверенно обошел гудящую очередь и приблизился к краю стойки, крепко прижимая к груди рабочую картонную папку.
Рабочее место заведующего располагалось тут же, за деревянной перегородкой. Мужчина в выцветшем синем халате с закатанными рукавами сидел перед распотрошенным нутром телевизора и методично зачищал скальпелем контакты переключателя.
— Добрый день, Семен Кузьмич. Я из НИИ «Электронмаш», — Олег оперся о шершавый барьер. — Мне не в ремонт. Нам для макетов нужны блоки цветности и развертки УПИМЦТ. Наше снабжение уже готовит письмо на обмен по актам списания, всё будет официально. Я принес опись того, что мы можем отдать из запасов нашего КБ взамен. Радиаторы, тумблеры, медный провод, измерительная техника.
— И нужны не полностью разграбленные платы, а с живыми краевыми разъемами и целыми посадочными местами, — сразу добавил он.
Пахло здесь совершенно иначе, чем в стерильных лабораториях НИИ или пропахших канифолью кабинетах владимирского КБ. Это был густой, застоявшийся