Создавая наш доморощенный Бейсик, мы заимствовали кое-что из предыдущих версий – давнишняя программистская традиция. Языки развиваются, идеи смешиваются; в компьютерной технике мы все стоим на чьих-то плечах. Шли недели, задача все больше захватывала нас. Насколько нам было известно, мы создавали первый язык программирования высокого уровня специально для микропроцессора. Иногда мелькало подозрение, что какая-нибудь группа в Массачусетском технологическом или в Стэнфорде может опередить нас, но мы отбрасывали эти мысли. Мы справимся? Мы можем завершить работу и отчитаться в Альбукерке? Да, можем! Мы энергичны и умелы, мы ни за что не упустим такую возможность.
Мы работали без перерыва, в две смены по выходным. Билл практически забросил учебу. Монте как-то проспал занятия по французскому, которые начинались в час дня. Я игнорировал работу в Honeywell, появляясь в офисе в обед. Дотерпев до половины шестого, я возвращался к Айкену, где сидел часов до трех утра. Я сохранял файлы, спал часов пять-шесть – и все сначала. Мы обедали в гарвардской пиццерии или брали по тарелке «пупу» в «Аку-Аку» – местной версии ресторанов «У торговца Вика». Я очень любил их яичные роллы и жареные креветки.
Во время наших ночных бдений я иногда замечал, что Билл дремлет у терминала. Порой он на середине строки начинал клониться вперед, пока не тыкался носом в клавиатуру. Продремав час или два, Билл открывал глаза, приглядывался к экрану и, моргнув пару раз, продолжал точно с того места, где остановился, – потрясающий дар концентрации.
Работая в таком тесном сотрудничестве, мы трое сдружились. Поскольку наша программа выполнялась на верхнем уровне многопользовательской операционной системы TOPS-10, мы могли работать одновременно. Мы устраивали соревнования: кто напишет подпрограмму с меньшим числом команд; разбредались с блокнотами в разные углы и начинали строчить. Потом кто-нибудь подавал голос:
– Я могу за девять.
Другой откликался:
– А у меня – пять!
Когда Монте разложил на полу распечатку своей подпрограммы плавающей запятой, Билл растянулся рядом с длиннющей бумажной гармошкой, выискивая, где еще можно сократить. Мы знали, что каждый сэкономленный байт освободит дополнительное место для приложений пользователя.
(Теперь мы живем в ином мире, где шестнадцать гигабайт памяти – в четыре миллиона раз больше, чем было у нас на «Альтаире» для Бейсика, – упакованы в iPhone. Изящный, короткий код можно считать утерянным искусством. Люди еще пытаются делать программы эффективными, но никто уже не экономит байты – и даже мегабайты.)