http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html
Очень понравилось (via http://checat.livejournal.com/302486.html ), решил в меру способностей перевести. Пока 100% не осилил, плюс возможно где-то неправильно понял. Любые дополнения и исправления категорически приветствуются :-)
1801 - Жозеф-Мария Жаккард использует перфокарты, чтобы заставить ткацкий станок вывести "hello, world" на ткани. Идеи Жаккарда не произвели впечатления на тогдашних обитателей хабра и RSDN из-за отсутствия распараллеливания, сворачивания хвостовой рекурсии, а также из-за некрасивого использования заглавных букв.
1842 - Ада Лавлейс пишет первую программу. Её усилия были немного затруднены тем обстоятельством, что у неё не было какого-либо настоящего компьютера, чтобы эту программу выполнять. Позже эту методику возьмут на вооружение Ынтырпрайзные архитекторы, чтобы программировать на UML.
1936 - Алан Тьюринг изобретает все языки программирования, которые когда-либо будут придуманы, но английская разведка обманом вербует его под именем Агента 007, пока он не успел это всё запатентовать.
1936 - Алонзо Чёрч также изобретает все языки программирования, которые когда-либо будут придуманы, и делает это даже лучше Тьюринга. Его лямбда-исчисление не получает широкого признания, потому что оно недостаточно похоже на C. Критика преследует его, несмотря на то, что язык C изобрести ещё не успели.
1940s - Появляются различные "компьютеры", которые можно "программировать" посредством коммутации кучи проводов и тумблеров. Инженеры занимаются таким программированием, чтобы только не участвовать в дебатах о том, следует использовать табуляции или пробелы
1957 - Джон Бэкус и Ай-Би-Эм создают Fortran. В общем-то, ничего занятного нет ни в Фортране, ни в IBM. Синтаксической ошибкой является написание кода на Фортране, если в это время на тебе не надет синий галстук.
1958 - Джон Мак-Карти и Пол Грэхем изобретают LISP. Из-за высокой стоимости, вызванной послевоенным истощением стратегических резервов круглых скобок [1] на складах США, LISP так и не становится популярным. Несмотря на недостаток популярности, LISP (ныне "Lisp" или иногда "Arc") сохраняет влияние, как "язык ключевых алгоритмических технологий, таких, как рекурсия и снисходительность" [2]
[1] - к счастью для компьютерной науки, остаются более чем достаточные запасы фигурных и угловых скобок.
[2] Catch as catch can - Verity Stob ( http://www.theregister.co.uk/2006/01/11/exception_handling/ )
1959 - Проспорив Рону Хаббарду, Грейс Хоппер и ещё несколько садистов изобретают "the Capitalization Of Boilerplate Oriented Language" (COBOL). Годы спустя, участники конференций по Ruby, в качестве жалких попыток сексистской мести часто проповедуют женоненавистнические идеи.
1964 - Джон Кемени и Томас Куртц создают BASIC, неструктурированный язык программирования для учёных некомпьютерных дисциплин.
1965 - Kemeny and Kurtz go to 1964.
1970 - Гай Стил и Джеральд Сассман создают язык Scheme. Их труд положил начало серии исследований "Лямбда Превосходная", достигшей своей вершины в работе "Лямбда - Превосходная кухонная утварь". Эта работа легла в основу долгих но совершенно неоцененных программ телемагазинов, идущих по ТВ поздно ночью. Лямбда-функции пребывали в совершенном забвении, до тех пор, пока Java не сделала их снова популярными самим фактом того, что в Java их нет.
1970 - Никлаус Вирт создаёт Pascal, процедурный язык программирования. Критики немедленно осудили Паскать за то, что в нём используется запись "x := x + y", вместо более привычного C-подобного "x = x + y". Эти обвинения преследует Паскаль, несмотря на то, что язык C изобрести ещё не успели.
1972 - Деннис Ритчи изобретает необычайно мощное ружьё, которое стреляет одновременно и вперёд, и назад. Будучи неудовлетворённым количеством последовавших за этим изобретением смертей и увечий, он изобретает язык C и систему Unix.
1972 - Алан Кольмероер разрабатывает язык логического программирования Prolog. Его целью было создать язык с интеллектом двухлетнего ребёнка. Он доказал, что достиг своей цели, продемонстрировав Пролог-программу, отвечавшую "Нет!" на любой вопрос.
1973 - Robin Milner creates ML, a language based on the M&M type theory. ML begets SML which has a formally specified semantics. When asked for a formal semantics of the formal semantics Milner's head explodes. Other well known languages in the ML family include OCaml, F#, and Visual Basic.
1980 - Алан Кей создаёт язык Smalltalk и изобретает термин "обьектно-ориентированный". На вопрос, что это значит, он отвечает "Smalltalk - программы это просто обьекты". На вопрос, из чего состоят обьекты, отвечает "из обьектов". На вопрос, из чего состоят эти обьекты, отвечает: "это всё обьекты, на более глубоком уровне, и глубже, и пока вы не добрались до черепах"
1983 - Бьярн Страуструп собирает воедино всё, что он когда-либо слышал в отношении языка C, идеи, жалобы, предложения и т.п, и на основе этого создет язык C++. Язык получился настолько сложным, что программы, написанные на нём, приходится пересылать в будущее, чтобы скомпилировать их при помощи искусственного интеллекта "Скайнет". Компиляция безбожно тормозит. Зачем это нужно Скайнету - неясно, но посланцы из будущего говорят голосом Шварценеггера "крошка, тебе не о чем беспокоиться". Поговаривают о том, что Скайнет представляет собой результат ошибки переполнения буфера в программе на C++.
1986 - Брэд Кокс и Том Лав создают Objective-C, объявив, что "этот язык сочетает в себе всю мощную систему защиты памяти от языка C, со всей невероятной скоростью языка Smalltalk". Современные историки подозревают, что эти двое страдали дислексией.
1987 - Лэрри Уолл засыпает за компьютером и лоб Лэрри Уолла стукается о клавиатуру. Проснувшись, Лэрри Уолл понимает, что строка символов на мониторе Лэрри Уолла не случайна, а ниспослана ему Богом, как пример языка программирования, который он, Лэрри Уолл, по замыслу Божию должен разработать и принести миру. Так родился язык Perl.
*******
1996 - Джеймс Гослинг изобретает Java. Java - это относительно многословный основанный на классах объектно-ориентированный язык программирования с автоматической сборкой мусора, статической типизацией, одинарной диспетчеризацией, поддерживающий простое наследование реализаций и множественное наследование интерфейсов. Sun трубит на весь мир о новаторской сути языка Java.
2001 - Андерс Хейлсберг изобретает C#. C# - это относительно многословный основанный на классах объектно-ориентированный язык программирования с автоматической сборкой мусора, статической типизацией, одинарной диспетчеризацией, поддерживающий простое наследование реализаций и множественное наследование интерфейсов. Microsoft трубит на весь мир о новаторской сути языка C#.
Очень понравилось (via http://checat.livejournal.com/302486.html ), решил в меру способностей перевести. Пока 100% не осилил, плюс возможно где-то неправильно понял. Любые дополнения и исправления категорически приветствуются :-)
1801 - Жозеф-Мария Жаккард использует перфокарты, чтобы заставить ткацкий станок вывести "hello, world" на ткани. Идеи Жаккарда не произвели впечатления на тогдашних обитателей хабра и RSDN из-за отсутствия распараллеливания, сворачивания хвостовой рекурсии, а также из-за некрасивого использования заглавных букв.
1842 - Ада Лавлейс пишет первую программу. Её усилия были немного затруднены тем обстоятельством, что у неё не было какого-либо настоящего компьютера, чтобы эту программу выполнять. Позже эту методику возьмут на вооружение Ынтырпрайзные архитекторы, чтобы программировать на UML.
1936 - Алан Тьюринг изобретает все языки программирования, которые когда-либо будут придуманы, но английская разведка обманом вербует его под именем Агента 007, пока он не успел это всё запатентовать.
1936 - Алонзо Чёрч также изобретает все языки программирования, которые когда-либо будут придуманы, и делает это даже лучше Тьюринга. Его лямбда-исчисление не получает широкого признания, потому что оно недостаточно похоже на C. Критика преследует его, несмотря на то, что язык C изобрести ещё не успели.
1940s - Появляются различные "компьютеры", которые можно "программировать" посредством коммутации кучи проводов и тумблеров. Инженеры занимаются таким программированием, чтобы только не участвовать в дебатах о том, следует использовать табуляции или пробелы
1957 - Джон Бэкус и Ай-Би-Эм создают Fortran. В общем-то, ничего занятного нет ни в Фортране, ни в IBM. Синтаксической ошибкой является написание кода на Фортране, если в это время на тебе не надет синий галстук.
1958 - Джон Мак-Карти и Пол Грэхем изобретают LISP. Из-за высокой стоимости, вызванной послевоенным истощением стратегических резервов круглых скобок [1] на складах США, LISP так и не становится популярным. Несмотря на недостаток популярности, LISP (ныне "Lisp" или иногда "Arc") сохраняет влияние, как "язык ключевых алгоритмических технологий, таких, как рекурсия и снисходительность" [2]
[1] - к счастью для компьютерной науки, остаются более чем достаточные запасы фигурных и угловых скобок.
[2] Catch as catch can - Verity Stob ( http://www.theregister.co.uk/2006/01/11/exception_handling/ )
1959 - Проспорив Рону Хаббарду, Грейс Хоппер и ещё несколько садистов изобретают "the Capitalization Of Boilerplate Oriented Language" (COBOL). Годы спустя, участники конференций по Ruby, в качестве жалких попыток сексистской мести часто проповедуют женоненавистнические идеи.
1964 - Джон Кемени и Томас Куртц создают BASIC, неструктурированный язык программирования для учёных некомпьютерных дисциплин.
1965 - Kemeny and Kurtz go to 1964.
1970 - Гай Стил и Джеральд Сассман создают язык Scheme. Их труд положил начало серии исследований "Лямбда Превосходная", достигшей своей вершины в работе "Лямбда - Превосходная кухонная утварь". Эта работа легла в основу долгих но совершенно неоцененных программ телемагазинов, идущих по ТВ поздно ночью. Лямбда-функции пребывали в совершенном забвении, до тех пор, пока Java не сделала их снова популярными самим фактом того, что в Java их нет.
1970 - Никлаус Вирт создаёт Pascal, процедурный язык программирования. Критики немедленно осудили Паскать за то, что в нём используется запись "x := x + y", вместо более привычного C-подобного "x = x + y". Эти обвинения преследует Паскаль, несмотря на то, что язык C изобрести ещё не успели.
1972 - Деннис Ритчи изобретает необычайно мощное ружьё, которое стреляет одновременно и вперёд, и назад. Будучи неудовлетворённым количеством последовавших за этим изобретением смертей и увечий, он изобретает язык C и систему Unix.
1972 - Алан Кольмероер разрабатывает язык логического программирования Prolog. Его целью было создать язык с интеллектом двухлетнего ребёнка. Он доказал, что достиг своей цели, продемонстрировав Пролог-программу, отвечавшую "Нет!" на любой вопрос.
1973 - Robin Milner creates ML, a language based on the M&M type theory. ML begets SML which has a formally specified semantics. When asked for a formal semantics of the formal semantics Milner's head explodes. Other well known languages in the ML family include OCaml, F#, and Visual Basic.
1980 - Алан Кей создаёт язык Smalltalk и изобретает термин "обьектно-ориентированный". На вопрос, что это значит, он отвечает "Smalltalk - программы это просто обьекты". На вопрос, из чего состоят обьекты, отвечает "из обьектов". На вопрос, из чего состоят эти обьекты, отвечает: "это всё обьекты, на более глубоком уровне, и глубже, и пока вы не добрались до черепах"
1983 - Бьярн Страуструп собирает воедино всё, что он когда-либо слышал в отношении языка C, идеи, жалобы, предложения и т.п, и на основе этого создет язык C++. Язык получился настолько сложным, что программы, написанные на нём, приходится пересылать в будущее, чтобы скомпилировать их при помощи искусственного интеллекта "Скайнет". Компиляция безбожно тормозит. Зачем это нужно Скайнету - неясно, но посланцы из будущего говорят голосом Шварценеггера "крошка, тебе не о чем беспокоиться". Поговаривают о том, что Скайнет представляет собой результат ошибки переполнения буфера в программе на C++.
1986 - Брэд Кокс и Том Лав создают Objective-C, объявив, что "этот язык сочетает в себе всю мощную систему защиты памяти от языка C, со всей невероятной скоростью языка Smalltalk". Современные историки подозревают, что эти двое страдали дислексией.
1987 - Лэрри Уолл засыпает за компьютером и лоб Лэрри Уолла стукается о клавиатуру. Проснувшись, Лэрри Уолл понимает, что строка символов на мониторе Лэрри Уолла не случайна, а ниспослана ему Богом, как пример языка программирования, который он, Лэрри Уолл, по замыслу Божию должен разработать и принести миру. Так родился язык Perl.
*******
1996 - Джеймс Гослинг изобретает Java. Java - это относительно многословный основанный на классах объектно-ориентированный язык программирования с автоматической сборкой мусора, статической типизацией, одинарной диспетчеризацией, поддерживающий простое наследование реализаций и множественное наследование интерфейсов. Sun трубит на весь мир о новаторской сути языка Java.
2001 - Андерс Хейлсберг изобретает C#. C# - это относительно многословный основанный на классах объектно-ориентированный язык программирования с автоматической сборкой мусора, статической типизацией, одинарной диспетчеризацией, поддерживающий простое наследование реализаций и множественное наследование интерфейсов. Microsoft трубит на весь мир о новаторской сути языка C#.
no subject
Date: 2009-06-12 09:35 pm (UTC)Однако, по прочтении этого текста меня сразу посетил могучий комплекс неполноценности, ибо, будучи уже 14 лет программистом, я ровным счетом ничего из вышеизложенного не знаю. И знать не хочу, что характерно :)
И все равно, текст замечательный
no subject
Date: 2009-09-04 06:45 am (UTC)http://imil.habrahabr.ru/blog/68727/
(этот пост случайно нашел уже потом)
no subject
Date: 2009-09-04 06:58 am (UTC)Тут нужно действительно владеть контекстом в значительно бОльшем объёме, чем владею я. Про "Криптономикон" из Вашей статьи по ссылке уже сходил и почитал. Вот не знал, однако!
(кстати, факт использования реальных людей в книге напомнил любимую мной книгу "Посмотри в глаза чудовищ", Лазарчука+Успенского. Там Агентом 007 сделан вообще Николай Гумилёв)
Спасибо за ссылку! Меня нет на Хабре, а то "плюсанул" бы с удовольствием :)
no subject
Date: 2009-09-04 07:13 am (UTC)"Криптономикон" почитать точно стоит, нечасто попадается увлекательная книга про математиков и айтишников (и про многое другое) от которой не тошнит. И раз уж вы владеете английским - лучше в оригинале.
no subject
Date: 2009-09-04 07:24 am (UTC)Как жалко, что 15 лет назад я не "прорубился" в должном объёме через спецкурс по языкам программирования. В МФТИ в те годы уже водилось некоторое количество очень интересных людей, у которых было что почерпнуть.
Конкретно про функциональщину и пролог нам рассказывала Ольга Горчинская, которая теперь работает в Oracle. Зачёт состоял в том, что претендент должен был выступить перед остальной группой с кратким докладом по какой-то из прочитанных тем (поскольку на лекции никто ни фига не ходил - чтоб люди хоть краем уха послушали). Зачёт всем поставила ;-)
no subject
Date: 2009-09-04 07:24 am (UTC)no subject
Date: 2009-09-04 08:32 am (UTC)no subject
Date: 2009-09-11 11:40 am (UTC)Почитаем-с.
no subject
Date: 2009-09-27 08:52 am (UTC)