Дэниел Генри Холмс Ингаллс-младший (род. 1944) — пионер объектно-ориентированного компьютерного программирования и главный архитектор , дизайнер и разработчик пяти поколений сред Smalltalk . Он разработал виртуальную машину с байт-кодом , которая сделала Smalltalk практичным в 1976 году. Он также изобрел битовый блит , графическую операцию общего назначения, которая сегодня лежит в основе большинства растровых компьютерных графических систем, и всплывающие меню . Он разработал обобщения BitBlt для произвольной глубины цвета со встроенными функциями масштабирования , вращения и сглаживания . Он внес значительный вклад в версию Smalltalk для Squeak , включая оригинальную концепцию Smalltalk, написанную сам по себе и сделанную переносимой и эффективной с помощью переводчика Smalltalk-to- C .
Ингаллс получил степень бакалавра гуманитарных наук (BA) по физике в Гарвардском университете и степень магистра наук (MS) в области электротехники в Стэнфордском университете . Работая над получением степени доктора философии (Ph.D.) в Стэнфорде, он основал компанию по продаже изобретения программного обеспечения для измерения, которое он усовершенствовал, и так и не вернулся в академические круги .
Первое широко известное исследование Ингаллса было проведено в Xerox PARC , где он начал пожизненное исследовательское сотрудничество с Аланом Кеем и выполнил отмеченную наградами работу над Smalltalk. Как писал о Дэне Питер Сибель в своей книге «Кодеры за работой, размышления о ремесле программирования»: «Если Алан Кей — отец Smalltalk, то Дэн Ингаллс — его мать. Возможно, Smalltalk зародился как проблеск в глазах Алана Кея, но Ингаллс — это тот, кто проделал тяжелую работу по воплощению его в жизнь. Начиная с первой реализации Smalltalk, написанной на BASIC и основанной на одной странице заметок Кея, Ингаллс участвовал во внедрении семи поколений Smalltalk, от первого прототипа до последнего. современная реализация с открытым исходным кодом, Squeak». [4] Принципы дизайна Дэна для Smalltalk включали важные концепции личного мастерства, хороший дизайн в единой структуре, язык для общения, взаимодействие языка, концепцию «объектов», управление хранилищем, сообщения и другие принципы, изложенные в его «Байте». Журнальная статья 1981 года «Принципы проектирования Smalltalk». [5] [6]
В 2020 году Ингаллс написал «Эволюцию Smalltalk» для конференции ACM HOPL, программы ACM. Язык., Том. 4, № HOPL, статья 85. Дата публикации: июнь 2020 г., в которой подробно описан дизайн Smalltalk посредством многочисленных итераций языка Ингаллса, включая его разработку Squeak в 1996 г. [7] [8] Хотя некоторые могут быть не знакомы с язык Smalltalk или тот факт, что он положил начало объектно-ориентированному программированию, он до сих пор остается полезным и широко используемым языком. [8]
Ларри Теслер сказал Алану Кею и Дэну Ингаллсу, что, по его мнению, блоки битов можно легко перемещать по экрану. Ингаллс сказал Ларри, что он научится программировать на микрокоде самого низкого уровня, чтобы использовать всю доступную мощность. Диана Мерри работала над программированием отображения текста, и после разговора с ней Ингаллс углубился в проблему. Несколько месяцев спустя он придумал способ перемещения информации, который был «немного эффективным». [9]
«Идея пришла к нему визуально. Когда вы перемещаете информацию на дисплее, будь то прокрутка, копирование текста или копирование графического изображения из одного места в другое, у вас есть источник и место назначения в памяти компьютера. В уме он представлял эту концепцию в виде колеса, которое вращалось от начальной точки до конечной точки. Эта идея казалась очевидной после того, как ее придумал Ингаллс, и она была широко скопирована всеми последующими графическими вычислительными системами. Сегодня он остается сердцем компьютерного мира Macintosh и Windows. Однако в начале 1970-х годов это была радикально новая идея, называемая Bit Blit , которая позволяла мгновенно «всплывать» графическим меню на экране Alto. в ответ на щелчок мыши. Как и любое другое программное обеспечение, Bit Blit сделал возможным современный графический компьютерный интерфейс». [9]
Ингаллс перешел в Apple Inc. В 1987 году он оставил исследовательскую деятельность, чтобы на время управлять семейным бизнесом Homestead Resort [10] в Хот-Спрингс, штат Вирджиния . [11] Семья Ингаллс владела и управляла курортом Homestead Resort в течение 100 лет. [12] [13]
Ингаллс вернулся в Силиконовую долину в 1995 году, сначала работая в Interval Research Corporation , а затем вернулся в Apple. Начав в Xerox, а затем в Apple, он разработал Fabrik — язык визуального программирования и интегрированную среду разработки (IDE), состоящую из набора вычислительных компонентов и компонентов пользовательского интерфейса , которые можно «связать» вместе для создания новых компонентов и полезного прикладного программного обеспечения. .
Затем он перешел в Hewlett-Packard Labs , где разработал архитектуру модулей для Squeak . Он также основал небольшую фирму Weather Dimensions, Inc., которая отображает местные данные о погоде на домашних компьютерах. [14]
Затем Ингаллс работал заслуженным инженером в Sun Microsystems , где работал в исследовательском отделе Sun Microsystems Laboratories (Sun Labs). Его последний проект — среда JavaScript под названием Lively Kernel [15] , которая позволяет осуществлять интерактивное веб- программирование и объекты внутри веб-браузеров .
Хотя Ингаллс наиболее известен своей работой над Smalltalk, он также известен разработкой системы оптического распознавания символов для письма деванагари , которую он сделал в сотрудничестве со своим отцом, Дэниелом Х. Х. Ингаллсом-старшим , [16] профессором санскрита . [17]
Ингаллс перешел в исследовательский центр SAP SE в Пало-Альто в качестве научного сотрудника . Он был ключевым членом группы главных ученых, руководившей технологическим видением, направлением и реализацией компании. Он перевел свою исследовательскую группу в YCombinator, в недавно сформированную исследовательскую группу YCombinator, YCR, где он продолжил свои исследования, живя недалеко от пляжа в Рио-дель-Мар , Аптос, Калифорния, со своей женой Кэтлин Галас, где он также внес свой вклад в разработку Реализация Squeak Smalltalk, исследование JavaScript и проект Lively Kernel Project, который сейчас находится в Институте Хассо Платтнера .
Сейчас Ингаллс консультирует и живет недалеко от пляжа в Манхэттен-Бич, штат Калифорния, со своей женой Кэтлин Галас. [18]
В 1984 году Ингаллс получил премию Грейс Мюррей Хоппер Ассоциации вычислительной техники (ACM) как выдающийся молодой ученый за свои исследования Xerox PARC , в том числе побитовую печать . [19]
В 1987 году вместе с Аланом Кеем и Адель Голдберг он получил премию ACM Software System Award за работу над Smalltalk , первой полностью объектно-ориентированной системой программного обеспечения. [20]
В 2002 году он вместе с Адель Голдберг стал лауреатом премии доктора Добба за выдающиеся достижения в программировании . [21]
В 2022 году Ингаллс стал членом Музея истории компьютеров за создание, разработку и создание семи поколений среды программирования Smalltalk, а также за продвижение объектно-ориентированного программирования. [22]
Также в 2022 году Дэн Ингаллс получил Старшую премию Даля-Найгаарда от ECOOP за вклад в развитие современных вычислений. [23]