Чтение онлайн

на главную - закладки

Жанры

Научная фантастика и научная реальность в информатике
Шрифт:

В шестидесятых годах сэр Герман Бонди написал статью о том, кому следует заниматься академическими исследованиями. Вопрос был поднят весьма важный. До второй мировой войны учёных было пренебрежимо мало, но после признания того, что война была выиграна наукой и технологиями, академические учреждения начали получать поддержку. Неудивительно, что Бонди пришёл к выводу, что многим из его современников, привлечённых к научным исследованиям, лучше было бы подыскать себе другое занятие. Поскольку взрывное развитие университетов было напрямую связано с ожиданием большой отдачи от науки, Бонди также посвятил раздел своей статьи обсуждению пользы от науки в целом. Его вывод отрезвляет.

Он указывает, что среди задач, поступающих в университеты извне, из «реального мира», около 80 % тривиальны и около 20 % явно неразрешимы,

и что академические исследования потенциально могут повлиять на тонкий граничный слой между ними, так как только там знания, талант и упорный труд могут достичь чего-то, что не может быть достигнуто другими средствами. В нынешней научно-технической эйфории столь отрезвляющее предупреждение более чем необходимо; оно, впрочем, не было ни услышано, ни замечено, но это уже другая история.

По несчастному историческому совпадению, компьютеры появились как раз в десятилетия безграничной веры в всемогущество науки и технологии. Тогда как более устоявшиеся науки обзавелись корнями и традициями в более благоразумные времена, мы ввязались в информатику, когда наши ожидания ничем не сдерживались. С исторической точки зрения этот наивный оптимизм вполне понятен. И этому даже можно найти кое-какие оправдания. Видите ли, Бонди физик, и его мнение 80/20 % обусловлено его знанием, каким образом естественные науки справляются со сложностями, с которыми мы сталкиваемся в окружающем нас мире. Напротив, информатика имеет дело с миром артефактов, в котором сложность имеет рукотворное происхождение. В этом заключается большая разница между ними, и вполне возможно, что в области информатики «пограничный слой» Бонди вовсе не так уж исчезающе тонок. Но чтобы сделать грамотный вывод о том, что данный слой мог бы и должен был бы содержать, нам придётся понять, как возникла и как развивалась информатика.

Впрочем, перед тем, как обратиться к информатике как таковой, я должен разделаться ещё с одной мечтой, которой часто грезили в эти десятилетия, а именно — что возможно «планировать» исследования таким образом, чтобы в должное время производить то, что требует мир. Наука не может работать в таком режиме (что, кстати говоря, не так уж плохо, поскольку зачастую существует коренное различие между тем, что мир требует, и тем, что ему в действительности нужно).

Е.Т. Белл справедливо хвалил некоторых руководителей за то, что они были «достаточно дальновидны, чтобы понять, что самый простой путь избавить математику от математика — это оплачивать его содержание», и это справедливо и для других наук. Никогда ещё не наблюдался значительный прогресс в науке из-за того, что какому-то благодетелю понадобился результат. Существенный прогресс в науке возникает лишь тогда, когда после поисков и размышлений образованный и оригинальный ум приходит к выводу, что что-то загадочное наконец-то созрело для понимания или что-то очень трудное может теперь быть сделано. Успешный научный поиск — это искусство делать действительно возможное, и следовательно, развитие науки гораздо лучше рассматривать как автономный процесс со своими собственными правилами, а не как плановую деятельность с заранее установленными внешними целями. (И с этим парадоксом сталкиваются все директора промышленных исследовательских лабораторий: привлекая нужных людей, они не могут служить своей компании лучше, чем просто оставив их в покое).

Сторонники междисциплинарных исследований, кажется, иногда верят в то, что границы между различными науками — не более, чем каприз истории. Но пути, которыми научное знание расходилось по разным дисциплинам, вовсе не случайны: то, что может образовать область жизнеспособной научной дисциплины, должно иметь количественные и качественные ограничения.

Среди количественных ограничений я упомяну, что область должна быть достаточно мала, так чтобы основные положения умещались в одной человеческой голове; с другой стороны, она должна быть достаточно обширна, чтобы предоставлять пищу для размышлений хотя бы на некоторое время.

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

Последнее требование полностью проясняет, каким образом раньше отделения информатики предшествовали самой

информатике: поначалу они представляли собой не более чем малопонятный коктейль всевозможных дисциплин, имеющих отношение к компьютерам, которые посчастливилось наскрести по университету, например: немного электроники, немного численного анализа, немного статистики и экономики, немного бизнес-администрирования и в США в довершение всего — немного искусственного интеллекта.

Коктейль, составленный как попало, не может быть хорош на вкус. Образование связей — одна из первостепенных задач для тех, кто пробивает нишу, в которой многообещающая наука информатика станет жизнеспособной.

Ради этой согласованности они оставили все специфические области потенциальных компьютерных приложений и попытались сконцентрироваться на том, что все эти приложения должны были иметь общего; они сделали это ради согласованности и общности, которая необходима для надёжности.

Другой аспект этой надёжности — сознательная попытка избежать подготовки учёных в течение половины от пятилетнего срока. Это включает, в частности, воздержание от всего, что только имеет отношение к компьютерам, доступным нынче на рынке. Например, то, как обходиться с идиосинкразией OS/360, рассматривалось как временная цель, не относящаяся к предмету информатики.

В общем: ниша была подготовлена вне специфических приложений и вне специфических машин. С течением времени в том же духе продолжается уклонение от особенностей специфических языков программирования и операционных систем. Сначала это делалось для защиты зарождающейся науки от изменчивости рыночных продуктов, а когда некоторые из этих продуктов стали стандартом де-факто, это стало делаться для защиты расцветающей науки от рыночного застоя.

Независимо от того, выражать ли сожаление или восторг по поводу этого разделения, я хочу, чтобы вы поняли, что для становления информатики как жизнеспособной науки это разделение было и остаётся conditio sine qua non.

Что же информатика делала в этой блистательной изоляции? Точнее говоря, что она делала, не теряя претензий на прикладную значимость? Что же, сделала она немало; фактически, куда больше, чем я могу разъяснить в рамках данной лекции, но я могу хотя бы передать вам общие моменты.

В шестидесятые годы она разработала теорию синтаксического разбора, необходимую для поднятия уровня компиляторов выше уровня поделок, напичканных ошибками, и превратив её в предмет, пригодный для обучения. Это было главное достижение: я, например, помню весьма отчётливо, как в 1962 те из нас, кто действительно написал компилятор, выглядели в глазах остальных как некие полубоги. В связи с этим достижением я бы хотел подчеркнуть, что этого никогда бы не произошло, если бы мы со временем не научились давать формальное определение синтаксиса компилируемого языка: без этого формального определения слишком сложно было бы определить существование проблемы компиляции. Теория конечных автоматов и теория сложности были разработаны, чтобы задать основные количественные границы того, что в принципе может быть вычислено; опять же, в основе этих теорий лежит очень формальный постулат относительно того, что есть вычисление, постулат, без которого эти теории не могут существовать. Для разработки операционных систем проблема синхронизации процессов была поставлена и решена, и первые теоремы об отсутствии «смертельных объятий» были доказаны; также формальное определение явления, интуитивно известного как «смертельное объятие», было первой предпосылкой этого достижения.

В семидесятые годы центр внимания сместился от синтаксиса к семантике, сначала к детерминированным последовательным программам, но вскоре впоследствии охватил также недетерминированность и параллельность. Я не буду подробно описывать различные отрасли: они простираются от модели типизированного лямбда-счисления до разработки преобразований программ с сохранением семантики. В этом десятилетии программы стали самостоятельными математическими объектами. Кратчайший способ уловить изменение направления внимания — это, пожалуй, отметить, что если раньше задачей программ было управлять поведением машины, то теперь задачей машины стало выполнение наших программ. Верификация и разработка программ развились в разделы формальной математики до такой степени, что теперь уже не считается безответственностью опубликовать программу, не испробовав её на компьютере.

Поделиться:
Популярные книги

Ваше Сиятельство

Моури Эрли
1. Ваше Сиятельство
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ваше Сиятельство

Неудержимый. Книга XIV

Боярский Андрей
14. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XIV

Идеальный мир для Лекаря

Сапфир Олег
1. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря

Подаренная чёрному дракону

Лунёва Мария
Любовные романы:
любовно-фантастические романы
7.07
рейтинг книги
Подаренная чёрному дракону

Я Гордый часть 2

Машуков Тимур
2. Стальные яйца
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я Гордый часть 2

Бальмануг. Невеста

Лашина Полина
5. Мир Десяти
Фантастика:
юмористическое фэнтези
5.00
рейтинг книги
Бальмануг. Невеста

Пограничная река. (Тетралогия)

Каменистый Артем
Пограничная река
Фантастика:
фэнтези
боевая фантастика
9.13
рейтинг книги
Пограничная река. (Тетралогия)

Сонный лекарь 6

Голд Джон
6. Сонный лекарь
Фантастика:
альтернативная история
аниме
5.00
рейтинг книги
Сонный лекарь 6

Тринадцатый

NikL
1. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
6.80
рейтинг книги
Тринадцатый

Ночь со зверем

Владимирова Анна
3. Оборотни-медведи
Любовные романы:
любовно-фантастические романы
5.25
рейтинг книги
Ночь со зверем

Страж. Тетралогия

Пехов Алексей Юрьевич
Страж
Фантастика:
фэнтези
9.11
рейтинг книги
Страж. Тетралогия

Кодекс Охотника. Книга XIV

Винокуров Юрий
14. Кодекс Охотника
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XIV

Не грози Дубровскому! Том VIII

Панарин Антон
8. РОС: Не грози Дубровскому!
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Не грози Дубровскому! Том VIII

Барон устанавливает правила

Ренгач Евгений
6. Закон сильного
Старинная литература:
прочая старинная литература
5.00
рейтинг книги
Барон устанавливает правила