Книга: Прогулки по Луне
Назад: Политический тяжеловес
Дальше: Нипурт из ниоткуда

Программист Ганя

Гаврила Грицко – известный хакер в колонии землян. Второе поколение переселенцев. На вид – двадцать с небольшим. Круглолицый, миловидный, крупный, чуть полноватый. Длинные русые волосы, спокойное, умное лицо. Говорит на английском. Речь ровная, правильная.
– Ганя, ты почему на английском говоришь? Ты же русский.
– Не знаю, привык, наверное. Русский тоже знаю. А на английском… Все программы компьютерной сети колонистов на английском.
– Как ты изучал программирование?
– Ну, у нас ведь здесь, Юрий Сергеевич, свой домашний университет. Плюс практика. А потом… Естественно, я ничего бы не узнал, если бы не имел доступа к земному Интернету.
– Не понял. Ты имеешь выход к земным коммуникациям? А я думал, мы, колонисты, – как полярники на льдине.
– Да что вы, я бы умер здесь без информации. Селениты же не дают доступа к своим базам данных. Это у нас, землян-дураков, все открыто и все доступно.
– Я думал, у нас нет связи с Землей.
– Для всех – нет, а для кого-то есть. Армстронг имеет официальный канал связи. Есть и неофициальные. У кого – не буду говорить. А про кого-то вы сами знаете. Спросите Шельгу.
– Шельга имеет связь с Землей? Удивительно.
– Что же тут удивительного? Не просто так же его послали вместе с вами. Ваш индивидуальный связист. Так что вы, Юрий Сергеевич, не оторваны от большого мира. Вернее, вы-то оторваны, а он, большой мир то есть, живет вашей жизнью, живет вместе с вами, оказывает вам, так сказать, постоянную дружескую поддержку.
– Ну, ты силен, Ганя! – искренне восхитился Ветров, «Умен не по годам», – мысленно добавил он.
– А в планетарную сеть можешь войти?
– Считается, что сеть колонистов полностью отделена от планетарной, в том числе – от медиаречевой ее части. Но это только говорят. Селениты такие песни поют – специально для дураков, прилетевших с Земли. Конечно, они же сами и изготовили эту сеть для нас. Что же, они не заложили возможность контролировать нас, что ли? Так же, как и американцы на Земле, – ворды, майкрософт, базы данных, платежные системы, свифт – они ведь через это контролируют на Земле всё и вся. Так же и селениты. Замаскировали хорошо свой контроль, вот что. Вроде и нет связи, типа живите, как хотите! Песня такая, лунная легенда.
Так просто эти связи не увидишь. Вообще… Вышел вроде туда. А кажется, что никуда не вышел. Не видно их программных объектов. Непроходимая стена. Как между этим миром и тем светом, I mean – миром мертвых. Планетарная сеть – совсем другой мир. Но чипы-то, которые сидят в головах нипуртов и волобуев, они ведь попадают туда. В интерактивную медиаречевую систему. Значит, туда все-таки можно попасть. Просто там программные объекты совсем другие. Не такие, как у нас.
– Как ты во всем этом разобрался?
– Да я уже десять или одиннадцать лет как купаюсь там. Вначале ничего не мог понять. Войти вошел, а что увидел – ноль понимания. А потом постепенно, шаг за шагом. В общем, я обжился за эти годы в их, как вы говорите, медиаречевой. Во многом разобрался. Может, еще и не во всем…
– Интересно, интересно, Ганя. Ну и как же запрограммирована планетарная сеть?
– Трудно было увидеть эти программные объекты. Вначале. А когда научился их различать, когда разглядел, что это не шум, что это и есть жизнь их компьютеров, размазанных по селенитским городам и туннелям, тогда стало немного проще.
Все это колебалось – то ничего не ясно, потом вдруг все сразу ясно. Обычный язык. Типа разговорного. Полазал по Интернету – в общем, очень похоже на шумерский. Только из нашей сети этих их клинописных знаков не увидеть. Все сделано очень наглядно – латиницей отображается. А язык все равно шумерский. Отыскал силлобарии – списки знаков с объяснением их значения и произношения. И понял, что приходящие ко мне записи на латинице – не абракадабра какая-нибудь, а отображение шумерских текстов. Ну, не совсем шумерских. Отличия есть, конечно. Но близко к ним.
Вроде все ясно. Но что обозначают эти тексты? Все слова, каждое по отдельности, понятны, а что написано – неясно. Будто с вершины горы опять в яму упал. Стал думать, как может быть устроен их язык программирования, для нас это язык будущего.
А когда начал понимать, оказалось, очень просто. Настолько просто, что это доступно даже моему коту Ларри. Ему только нужно объяснить. И тогда ему все будет абсолютно ясно. Он «думает» в точности так же, как эти программы.
Самое главное, что на языке программирования селенитских систем легко описываются интенции – намерения, такие как: связаться с Нейтеном, узнать, кто и где прячет Мэри, выяснить, кто организовал покушение на русского бизнесмена Ветрова, уговорить свою девушку, чтобы она осталась уже жить у меня и не бегала каждый день к маме отмечаться, послать информацию близнецам &so on.
– Ты женат, Ганя?
– Женат, не женат. Устаревшие понятия. Хотите выяснить, есть ли у меня девушка? Девушка есть. Ведем ли мы совместное хозяйство? Хозяйства у меня нет, а живем вместе. Уже пару лет.
– Да нет, это я так, к слову. Продолжай, очень даже интересно…
– Но ведь на Земле были уже попытки создать языки намерений: Лисп, Erlang, APL, Scala, Haskel.
– Были, но пока ничего хорошего из этого не получилось. А у них, как я понял, получилось.
– Значит, так – язык интенций. Из намерений возникают:
активности, их несколько уровней;
уведомления о запуске активностей;
уведомления о том, что уже произошли некоторые события.
Намерение вызывает активность и называет его класс.
Могут существовать еще неявные намерения – те, которые вызывают активность неявно. В этом случае система вызывает не активность с определенным классом, а называет интересующие параметры – по типу: интересно, что мы тут такого понаписали? То есть мы хотим найти и прочитать «новость о том, что мой рыжий кот Ларри уволен с поста „главного мышелова“ лугаля Уммы, у которого он подрабатывал втайне от своего настоящего хозяина, то есть от меня». Если находятся параметры, которые совпадают с условиями нашего намерения, тогда и вызывается соответствующая активность. И мы можем прочитать о безобразиях достопочтенного с виду кота Ларри. И никаких файлов. Никакого кодирования программ. Короче, программа как таковая не описывается. Она просто сама запускается и генерируется при появлении соответствующих условий.
Это функциональное программирование, в котором процесс вычислений трактуется как вычисление значений функций в математическом понимании последних.
– Это я понимаю. Сейчас у нас используется императивное программирование, которое описывает процесс вычислений как последовательное изменение состояний, подобно изменению состояний в теории автоматов.
– Вы правы. В императивном программировании значение функции зависит не только от аргументов, но и от состояния, в функциональном – нет понятия о состоянии программы. Ладно, это неважно. Извините, Юрий Сергеевич, я увлекся. Увлекся и отвлекся.
– Да нет, ничего, очень даже интересно. Надеюсь, мы сумеем еще поговорить об этом поподробнее как-нибудь в другой раз.
Вообще-то я хотел узнать, что в твоих силах, что вообще мы можем выяснить, находясь в планетарной сети?
– Узнать можно многое. Вы, наверное, хотели бы выяснить, как найти Мэри.
– Ты прав, юный друг. Абсолютно прав. Шельга уверяет меня, что с ней все в порядке. Тогда почему мы не можем ее найти?
– Мне жаль, мистер Ветров. И вас, и Мэри. Мы с ней знакомы с детства. С моего детства. Она ненамного старше меня. Но она была уже девушкой, а я еще сопливым мальчишкой. Я очень люблю ее, как подругу детства, разумеется, и с радостью помог бы вам обоим. Но ее следов в планетарной сети я пока не нашел. Почему? Кто вообще не находится под контролем медиаречевой системы? Вы знаете об этом – ВУВ-ы и земляне. Возможно, вначале это были ВУВ-ы, наверное, они украли Мэри, а потом передали кому-то из колонистов. Но это лишь предположение. В телефонной системе колонии я тоже не нашел намеков и информации о Мэри. Видно, злоумышленники ведут дела аккуратно и скрытно. Избегают обсуждать что-либо по телефону. Простите меня, Юрий Сергеевич. Но пока я ничем не могу вам помочь.
– Жаль, Ганя, жаль. Меня вот что еще интересует. Лунотрясения. Что ты об этом знаешь? Как они возникают? Откуда приходят?
– Да, сирены – это, конечно, очень интересный феномен. Знаете, я тоже задавался этими вопросами. Пошел по цепочке программных активностей, возникающих при лунотрясениях, и нашел огромный функциональный объект, который их запускает. Стал разбираться, как он устроен. На первый взгляд показалось, что все это устроено весьма примитивно. Вот сейчас мы и поймем, куда скачет этот «троянский конь», подумал я и уже руки потирал: «Ну, мы им покажем, где раки зимуют» – так ведь говорят в России? Начал по цепочке искать, откуда пришел этот функциональный объект, кто его внедрил. Разбирал оператор за оператором, оператор за оператором. И пришел, в конце концов, – куда? – правильно, вы уже все поняли – к самому началу. Пришел, откуда начал. Что же, получается, он сам себя запустил? А откуда взялся с самого начала?
– Мне знаком этот феномен. Настоящее, которое станет будущим, потом это будущее вернется в прошлое и запустит свое прошлое, которое со временем станет нашим настоящим.
– Думаю, тут совсем другой процесс. Это можно сравнить с тем, что курица и яйцо появились одновременно.
– Откуда же они могли появиться одновременно?
– Вы меня спрашиваете? Спрашиваете – значит, не знаете. Вот и я не знаю, Юрий Сергеевич. Но вакансий на это «откуда» довольно много. От Господа Бога до вакуума.
Начнем с вакуума. Когда-то давно мы все считали, что вакуум – это ничто. А теперь мы с вами знаем, что энергия, спрятанная в вакууме, на порядки превышает энергию видимой части Вселенной. Масса «темной материи» во много раз больше массы известной нам «видимой» материи. Кто расталкивает галактики после взрыва так, что они разлетаются с ускорением? Что это за силы, которые гораздо больше сил тяготения? Если Вселенная существует вечно, почему до сих пор не наступила ее «тепловая смерть», что противостоит мировой энтропии?
– Мировой энтропии, Гаврила, противостоим мы – люди и живая природа. Мы уменьшаем неопределенность в мире.
– Мы и Господь Бог. Вы верите в Бога, Юрий Сергеевич?
– Есть какая-то сила в природе, которая уменьшает неопределенность. Можно и так сказать – Господь Бог. Ну, хорошо. Откуда взялся этот функциональный объект, вызывающий атаку сирен, как ты думаешь?
– Ну, конечно, не от Господа Бога. Как-то появился. Виртуальные частицы сами появляются из вакуума. Вакуум кипит, исторгает из себя виртуальные частицы. Которые живут некоторое время и уходят обратно. В вакуум. В свой дом, как я понимаю. Или распадаются на элементарные частицы.
Но здесь у нас все проще. Гораздо проще. Что такое программный объект? Это какое-то описание, которое хранится в памяти. Память может менять свое состояние под воздействием электрических импульсов, поступающих по проводникам. Но электрические импульсы могут возникнуть в проводнике не только после сигнала от соседнего элемента, но и под воздействием электромагнитного излучения. Теоретически можно создать сложное электромагнитное воздействие, которое часть памяти информационного центра планеты установит в нужное состояние. Думаю, что это произошло именно так. Только не знаю, кто это мог сделать и зачем этому «кто» нужны были такие сложности, почему это нельзя было сделать традиционным способом, загрузив программы в компьютер по обычным каналам ввода? Это пока вопрос. Отчего вы улыбаетесь? Может, вы о чем-то догадываетесь, Юрий Сергеевич?
– Идея, конечно, интересная. Но ситуация пока непонятная. Вот тебе еще один вопрос. Если это такой вредный объект и никто из известных нам лиц и государственных органов не берет на себя ответственность за этот программный объект, может, было бы полезно просто стереть его, ликвидировать? Ага, попался «троянский конь»?! Вот и ступай на свалку истории.
– Могу вам признаться, Юрий Сергеевич, я уже думал об этом и даже сам для себя решил, что именно так и следует поступить. Ну и запустил «стиралку», процесс стирания. Сразу не сотрешь все одновременно. Запустил «стиралку», вот она и стирает. Как бы это объяснить? Она стирает с одной стороны, а с другой стороны объект прирастает. Причем то, что прирастает, получается гораздо более сложным, чем то, что уже стерто. И содержит дополнительные степени защиты.
Чего я только не предпринимал! Видимо, тот, кто создал этот объект, может анализировать мои действия с ним и имеет гораздо большую вычислительную мощность, чем доступные мне ресурсы. А может, и гораздо больший интеллект, чем мои скромные мыслительные способности.
Вот так вот, Юрий Сергеевич. Но это не Бог. Может быть, черт, дьявол, не знаю, как он называется. Как бы мне хотелось добраться до него. Эх, Юрий Сергеевич, если бы удалось получить поддержку Совета. Если бы я действовал в открытую, а не украдкой как хакер. Если бы селениты дали мне все возможности их языков программирования. Куда бы он, этот мистер X, делся со всеми своими вычислительными возможностями? Я бы в открытую запустил интенцию ликвидации лунотрясений, и тогда на меня работали бы распределенные вычислительные мощности всей планеты, в том числе неизвестные нам вычислительные мощности и даже «темная материя» самого этого «черта-дьявола». Такой замысел. Что получилось бы – большой вопрос, но хотелось бы попробовать.
– Как знать, как знать, Ганя. Ты говоришь: «темная материя». Думаю, здесь все проще. Видимая и вполне осязаемая материя. Просто мы не знаем, что за вычислительные мощности противостоят нам с тобой и где они спрятаны. Может быть, вовсе и не в планетарной сети, а в толще самой планеты? Ничего, Гаврила, как веревочке не виться, а шила в мешке не утаишь. Разберемся как-нибудь.
– Оптимист вы, Юрий Сергеевич. Отвечу вам тоже пословицей: «Сколько ни говори „халва“, во рту слаще не станет». Гадаем на кофейной гуще. Или на воске – какая разница?
Но я на вашей стороне. Можете на меня положиться. Если позовете… В общем, я пойду за вами. Хотя и не очень верю в успех нашего безнадежного предприятия. Помогу вам во всем. И с «троянским конем» готов бороться. Когда-нибудь найдем и на него управу.
– Это хорошо, что готов бороться. Но ведь землян мало. А древняя цивилизация лунян не очень-то расположена к нам.
– Скучные они, селениты. Любви не знают. Не знают обычных человеческих радостей. У этих представителей древней цивилизации, как вы говорите, нет ни достоинств, ни пороков. Они не знают даже, что такое корысть, стяжательство. Потому что нет частной собственности. Кроме личных вещей. Скучная канцелярократия, власть бюрократов. По типу вашего русского социализма.
– У нас давно уже нет социализма. В начале 90-х мы упали в объятия «бесчеловечного» капитализма.
– Вы ушли от этого. А они пришли к этому сотни тысяч лет назад. Сидят поодиночке в своих норах. Детей делают в инкубаторах. В свободное от работы время у них гимы и хобби. Мужчины любят вручную мастерить оружие под старину, женщины – ткать ковры и гобелены. Тоска. Зачем нужны их потрясающие технические достижения, если они не знают, что им делать с собой, если им неизвестны обычные радости жизни?
У них нет искусств. Книги читают только профессиональные. Не знают, что такое художественная литература, поэзия, театр, кино, балет. Нет, вру. Кое-что у них все-таки есть. Селениты музыку любят. У них музыка есть и вокал. Но вокал без слов, вокализы. У селенитов потрясающие вокалисты. Пением занимаются женщины, в основном волобуйки. Это величественно и очень красиво. Какой у них диапазон! И еще – они расщепляют голос и поют в одиночку на несколько голосов. Но поют только для себя. Уговорить их спеть для кого-нибудь другого очень и очень трудно. Мне, однако, довелось. Отпад. Полный отпад. Вы не слышали? Почти два года на Луне и не слышали. Советую. Поговорите с Рали. Может быть, она уговорит какую-нибудь вокалистку. Или сама и споет, порасспросите ее. Когда они поют, кажется, будто песня приходит не из этого мира – не из земного, и даже не из лунного.
Но с музыкой в обществе тоже не все гладко. У них принято всего тысяча музыкальных произведений. Государственный реестр. При желании их может послушать каждый лунянин. Другую музыку слушать нельзя. Считается, что одной тысячи произведений вполне достаточно для каждого жителя Луны.
– Интересно было бы послушать.
– Послушайте. Но вряд ли это доставит вам удовольствие. Хотя точно не знаю. В смысле – о вас не знаю в точности. Говорят, вы чем-то похожи на нипуртов. Может, вам и понравится их музыка.
– А в чем там дело? Почему это трудно слушать – сложно или неприятно?
– Как бы это вам объяснить? Могу только на примере европейской музыки. Потому что с основами восточной музыки не знаком. Принятые в Европе музыкальные интервалы дают целочисленные соотношения частот музыкальных звуков. Ну, например, малая септима дает отношение частот 16 к 9, большая септима – 15 к 8. Малая секунда – 16 к 15, большая секунда – 9 к 8. Таких натуральных интервалов двенадцать. И человек с развитым музыкальным слухом хорошо различает эти интервалы. Для нас гармония – чередование таких математически выверенных интервалов.
У селенитов все в точности так же. Только с одной разницей. У них потрясающий слух, и поэтому – огромное количество допустимых интервалов. Точно не знаю – думаю, сотни. У них возможно соотношение частот 107 к 103, например, или 193 к 101. И они это прекрасно чувствуют и ловят от этого кайф.
– Ты слышал их музыку?
– Да, странное впечатление. Какое-то нагромождение звуков. Потом длинная пауза. Одиночный удар. Опять длинная пауза. Опять скрежет. Мы ничего не можем понять. А у них слезы катятся.
– Как я понял, они любят слушать музыку. Надо расспросить об этом Рали. А что у тебя с книгами? Селениты, видимо, не знают ни художественной литературы, ни поэзии. Ты-то как обходишься без этого? Я уже почти два года здесь. Мне лично не хватает чтения. Глушу себя работой.
– Нет, я читаю. Скачиваю книги с Земли. И пишу их на местные носители. Вот, могу порекомендовать последние книги. Вы хотели бы на русском – правильно? Могу предложить Глуховского, только что скачал и распечатал на объемном принтере, хотите почитать? В романе описывается возможный вариант конца света: апокалипсис, увязанный с предсказаниями древней магии племени майя.
– Конец света – это любопытно. Но нас не интересует магия майя. Если бы это были древние шумеры или легенда о Гильгамеше…
Ветров с удивлением берет в руки «книгу». Картонка с красивым рисунком, олицетворяющим, по-видимому, обложку. Написано: Глуховский, «Сумерки». Ниже – аннотация. Обложка облита пластиком.
– «Сумерки». У меня в голове тоже сумерки. Как это можно читать?
– Отстали вы, Юрий Сергеевич. Смотрите, видите? В уголочке под пластиком голубая таблетка. Это разовый вариант книги.
– Почему ты отдаешь его мне? Если разовый, не возьму. Ты ведь не читал еще, а если сам захочешь прочесть?
– Если захочу, напечатаю еще. Это совсем несложно. Берите, берите, Юрий Сергеевич.
– Ну и как этим пользоваться? В компьютер засунуть? Что-то я не вижу разъема.
– Все гораздо проще. На ночь вскроете упаковку, проглотите таблетку. И во сне будете читать книгу. Причем во сне вы можете ее листать, возвращаться назад, открывать в любом нужном вам месте.
– Спасибо, Ганя, спасибо большое. Почитаем о конце света. Гильгамеш уже спасал человечество во время потопа. Теперь почитаем о предсказаниях майя.
– На здоровье, приятного вам чтения.
– А если за ночь не успею прочесть?
– Об этом вы не беспокойтесь. Во сне чтение идет быстро. Любую самую большую книгу легко одолеете, даже и перечитать сможете, если захотите. Спокойной ночи, Юрий Сергеевич, и приятного чтения.
Назад: Политический тяжеловес
Дальше: Нипурт из ниоткуда