1801 — С помощью ткацкого станка и перфокарт Жозеф Мари Жаккар выводит «привет мир!» на ткани. Современники не впечатлены: нет хвостовой рекурсии, параллелизма и заглавных букв.
1842 — Ада Лавлейс пишет первую программу. Ей мешает одна мелочь: нет компьютеров, на которых можно было бы запустить ее код. Позже ее методикой воспользуются архитекторы предприятия, программирующие на UML.
1936 — Алан Тьюринг изобретает все языки программирования, которые когда-либо появятся, но не успевает запатентовать: его вербует английская разведка и превращает в агента 007.
1936 — Алонзо Черч также изобретает все языки программирования. Его лямбда-исчисление проигнорировали из-за несхожести с C. Критикам ничуть не помешал тот факт, что C еще не изобрели.
1940-е — Инженеры «программируют» различные «компьютеры» с использованием проводов и переключателей, что бы не спорить на тему «табуляция против пробелов».
1957 -Джон Бэкус в IBM создает FORTRAN. В IBM и FORTRAN нет ничего смешного. Это синтаксическая ошибка — писать слово FORTRAN без галстука.
1958 — Джон Маккарти и Пол Грэм изобретают LISP. Его популярность сдерживается нехваткой круглых скобок, стратегические запасы которых истощились после войны. (к счастью для информатики, фигурные и квадратные скобки производятся в достаточных количествах.) Несмотря на низкую популярность LISP (теперь «Lisp» или «Arc») остается важным языком в «ключевых алгоритмических техниках вроде рекурсии или снисхождения»
1959 — Несколько проспоривших Рону Хаббарду садистов во главе с Грейс Хоппер изобретают многобуквенно-ориентированный язык COBOL. Годами позже, в бессмысленных и сексистских попытках отомстить адмиралу Хоппер, участники конференций по Ruby выступают с женоненавистническими докладами.
1964 — Джон Ке́мени и Томас Курц создают BASIC, неструктурированный язк программирования для незнакомых с компьютером ученых.
1965 — Кемени и Курц переносятся в 1964
1970 — Гай Стил и Джералд Сассман создают Scheme, что приводит к появлению серии статей «Лямбда — идеальная», завершившейся статьей «Лямбда — идеальная кухонная посуда» . Последняя породила длинную, но не особо успешную серию телемагазинов. Лямбды почти забыли, популярность к ним вернулась только после того, как их не включили в Java.
1970 — Никлаус Вирт создает процедурный язык Pascal. Его немедленно раскритиковали за то, что он использует синтаксис «x := x + y» вместо хорошо знакомого C-подобного синтаксиса «x = x + y». Критикам ничуть не мешал тот факт, что C еще не изобрели.
1972 — Де́ннис Ри́тчи изобретает ружье, стреляющее и вперед и назад. Не удовлетворившись количеством смертей и тяжелых увечий, он придумывает C и Unix.
1972 — Алан Колмерауэр конструирует логический язык Prolog. Его целью было создание языка с интеллектом двухлетнего ребенка. Достижение цели подтверждено демонстрацией сессии Prolog, отвечавшей «Нет» на любой запрос.
1973 — Робин Милнер создает язык ML, основанной на теории типов M&M. ML порождает SML, с официально описанной семантикой. У Милнера взорвалась голова, когда от него потребовали официальную семантику официальной семантики. В семейство ML также входят широко известные языки OCaml, F# и Visual Basic.
1980 — Алан Кэй создает Smalltalk и изобретает термин «объектно-ориентированный». На вопрос «что это значит?» он отвечает: «Программы на Smalltalk — объекты». На «из чего состоят объекты?» — «из объектов». На повторный вопрос — «объекты — все, на всю глубину, вплоть до черепах».
1983 -Вдохновляясь примером Ады Лавлейс, чьи программы никогда не работали, Жан Ишбиа в Министерстве Обороны США создает язык программирования Ada. Хотя науке неизвестны завершенные программы на Ada, историки считают его успешным общественным проектом, удерживающим несколько тысяч сотрудников министерства обороны от присоединения к преступному миру.
1983 -Бьёрн Страуструп собирает воедино все когда-либо слышанное о C и создает C++. Язык получился настолько сложный, что программы приходится отсылать в будущее, для компиляции искусственным интеллектом SkyNet, что замедляет разработку. Пока непонятно, почему SkyNet предоставляет подобные услуги, но представители будущего считают, что «не о чем беспокоиться, детка» — произнося это с австрийским акцентом. Существует гипотеза, что Skynet — это не более чем обнаглевшее переполнение буфера.
1986 — Брэд Кокс c Томом Лав создают Objective-C, заявляя, что «этот язык сочетает безопасность работы с памятью в C с невероятной скоростью Smalltalk». Современные историки считают обоих дислексиками.
1987 — Заснувший Ларри Волл упирается лбом Ларри Волла в клавиатуру. Проснувшись, Ларии Волл решает, что строка на мониторе Ларри Волла не случайна, это пример программы на новом языке, который бог повелевает создать своему пророку Ларри Воллу. Появляется Perl.
1990 — Комитет, основанный Саймоном Пейтон-Джонсом, Полем Худаком, Филипом Вадлером, Аштоном Кутчером и «Людьми за этичное обращение с животными» создает чистый, невзыскательный, функциональный язык программирования Haskell. Сложность использования монад для управления сторонними эффектами вызывает недовольство. Вадлер пытается успокоить критиков: «монада, это моноид в категории эндофункторов, в чем трудность?»
1991 — датский программист Гвидо ван Россум совершает загадочное путешествие в Аргентину. Вернувшись с большим шрамом на черепе он изобретает Python, провозглашается Повелителем Жизни легионами поклонников и объявляет, что «существует только один способ делать это». Польша нервничает.
1995 — Сидя в итальянском ресторане рядом с домом, Расмус Лердорф осознает, что тарелка со спагетти является отличной схемой всемирной паутины, под которую необходимо подстраиваться веб-приложениям. На обратной стороне салфетки он конструирует Програмируемую Гиперссылочную Пасту (Programmable Hyperlinked Pasta - PHP). Вся документация к PHP до сих пор хранится на этой салфетке.
1995 — Чтобы предотвратить загадочный апокалипсис, после которого Австралия превратиться в пустыню, населенную воинами с ирокезами и Тиной Тернер, Юкихиро «Mad Matz» Матсумото создает Ruby. Чуть позже настоящий изобретатель языка Дэвид Хейнемейер Ханссон переименовывает его в Ruby on Rails. [Описание изобретения Ruby Матсумотой неверно и будет удалено при следующей правке]
1995 — Изучив все ошибки, совершаемые при конструировании языков программирования, Айх Брендан изобретает несколько новых и создает LiveScript. Позже, пытаясь заработать на популярности Java, язык переименовывают в JavaScript. Еще позже, пытаясь заработать на популярности кожных заболеваний, язык переименовывают в ECMAScript.
1996 — Джеймс Гослинг изобретает Java. Java — это относительно многословный, обьектно-ориентированный, основанный на классах, статически типизированный, мусоро-сборочный, единично диспетчеризуемый язык с единичным наследованием воплощений и множественным наследованием интерфейсов. Sun громогласно провозглашает новизну Java.
2001 - Андерс Хейлсберг изобретает C#. C# — это относительно многословный, обьектно-ориентированный, основанный на классах, статически типизированный, мусоро-сборочный, единично диспетчеризуемый язык с единичным наследованием воплощений и множественным наследованием интерфейсов. Microsoft громогласно провозглашает новизну C#.
2003 — Пьяный Мартин Одерский видит рекламу масла, намазываемого на чей-то хлеб. Его осеняет. Он создает язык Scala, объединяющий объектно-ориентированное и функциональное программирование. Взбешенные поклонники обеих подходов объявляют джихад.
Перевод с английского. Исходник: A Brief, Incomplete, and Mostly Wrong History of Programming Languages
Похожие записи:
- Как советские компьютеры управляли космическими кораблями
- История Азерота и Warcraft. Последний Хранитель
- Книги и история успеха Барбары Шер
- История Азерота и Warcraft. Стальгорн и пробуждение дварфов. Война трех молотов
- История Азерота и Warcraft. Стальгорн и пробуждение дварфов. Семь королевств. Эгвин. Перевод на русский
- Opera — как масштабировать только текст
- Брандмауэр Windows и понятность компьютера
- Собственная сокровищница
- Про авторское право и жадность
- То, чего нельзя делать ни в коем случае (программисту)
- Про дизайн и выбор галереи для сайта/дневника
- Истоки успеха IBM и компьютерной отрасли США
Список похожих постов предоставлен вам плагином YARPP.