Найти в Дзене
Математика не для всех

Деннис Ритчи, создатель языка программирования C и соавтор операционной системы Unix, завершил свою докторскую диссертацию по теории

Деннис Ритчи, создатель языка программирования C и соавтор операционной системы Unix, завершил свою докторскую диссертацию по теории рекурсивных функций в Гарварде в начале 1968 года. Однако степень так и не была присуждена, а текст работы пропал на 50 лет, что породило множество вопросов. Среди них — как Ритчи удалось подготовить сложный математический документ в эпоху, когда компьютерная обработка текста находилась в зачатке? В 1960-е годы основным инструментом для набора текстов были электромеханические пишущие машинки, такие как IBM Model C, D и революционная Selectric с вращающимся шариком (typeball). Selectric, представленная в 1961 году, позволяла быстро менять шарики для набора специальных символов, что было важно для математических текстов. В 1965 году появился терминал IBM 2741, использующий механизм Selectric, который обеспечивал высокое качество печати и поддерживал сменные шарики, что делало его подходящим для научных работ. Ритчи, работавший в Bell Labs и имевший доступ

Деннис Ритчи, создатель языка программирования C и соавтор операционной системы Unix, завершил свою докторскую диссертацию по теории рекурсивных функций в Гарварде в начале 1968 года. Однако степень так и не была присуждена, а текст работы пропал на 50 лет, что породило множество вопросов. Среди них — как Ритчи удалось подготовить сложный математический документ в эпоху, когда компьютерная обработка текста находилась в зачатке?

В 1960-е годы основным инструментом для набора текстов были электромеханические пишущие машинки, такие как IBM Model C, D и революционная Selectric с вращающимся шариком (typeball). Selectric, представленная в 1961 году, позволяла быстро менять шарики для набора специальных символов, что было важно для математических текстов. В 1965 году появился терминал IBM 2741, использующий механизм Selectric, который обеспечивал высокое качество печати и поддерживал сменные шарики, что делало его подходящим для научных работ. Ритчи, работавший в Bell Labs и имевший доступ к Project MAC в Гарварде, мог использовать такой терминал.

В то время не существовало цифровых систем набора, таких как LaTeX. Ранние программы форматирования, вроде RUNOFF (1964) от Джерри Солтцера или Roff Брайана Кернхана (1968), не поддерживали математические выражения. Ритчи пришлось вручную настраивать подстрочные и надстрочные индексы, используя шаг в 1/12 дюйма, доступный на машинах IBM. Анализ диссертации показал идеальное соответствие символов 12x12 сетке, с редкими отклонениями на 1/24 дюйма для эстетической точности, например, при размещении знака "+".

Документ в 180 страниц содержал десятки математических символов и сложные выражения. Версии 1968 года (с 60 опечатками) и более поздняя (с исправлениями) демонстрируют удивительную точность. Авторы статьи пытались реконструировать текст с помощью troff и eqn, инструментов, появившихся позже, но подходящих для воссоздания. Использовались шрифты Pica 10 и Adobe Symbol, чтобы сохранить стиль оригинала.

Тайна остается: как Ритчи добился такой точности с ограниченными средствами? Возможно, он комбинировал машинку, ручную правку и Xerox, но доказательств нет.