Языки программирования дерево развития

Краткая и на 146% точная история языков программирования

Жозеф Мари Жаккар учит ткацкий станок читать перфокарты, создавая первый многопоточный процессор. Изобретение в штыки приняли ткачихи, которые уже тогда что-то подозревали.

1842

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

1936

Алан Тьюринг изобретает вообще всё, королева очарована им, но Тьюринг предпочитает ей мужскую компанию, что заканчивается для него печально.

Позже королева, конечно, остыла и простила Тьюринга, но тот, к сожалению, уже давно был мёртв.

1936

Алонзо Чёрч тоже изобретает вообще всё вместе с Тьюрингом. Но будучи по другую сторону пруда избегает расположения королевы и его последствий.

1957

Джон Бэкус создаёт Фортран — первый язык, который «используют настоящие программисты».

1959

Грейс Хоппер, устав от спарринга с Чаком Норрисом, изобретает первый бизнес-ориентированный язык программирования. Ну а так как всё связанное с бизнесом должно иметь длинное и скучное название, она нарекает его «бизнес-ориентированным языком общего назначения» или COBOL для краткости.

1964

Джон Кемени и Томас Курц решают, что программировать слишком сложно, и им нужно вернуться к базовым принципам. Так что они разбрасывают повсюду номера строк и называют своё детище BASIC.

1970

Никлаус Вирт создаёт Паскаль и пару других языков программирования. Да, кому-то нравится марки собирать, а его хобби было создавать языки программирования.

Никлаус также изобретает Закон Вирта, который делает закон Мура устаревшим, так как разработчики будут писать настолько раздутые программы, что никакие мэйнфреймы не успеют за ними. Как мы знаем, это предсказание сбылось — посмотрите, например, на Electron.js и на его абстракции.

1972

Деннис Ритчи от скуки, нагрянувшей в разгар напряжённого рабочего дня в Bell Labs, решает изобрести «C», который окажет ошеломительное влияние на индустрию: с этого момента все новые языки будут использовать фигурные скобки. «C» так же ввёл ошибки сегментации и другие инновации в программировании.

Так как до конца напряжённого рабочего дня оставалась пара свободных часов, Деннис и его приятели из Bell Labs решили создать пример программы на «C» и случайно создали операционную систему под названием Unix.

Читайте также:  Родовое дерево для ворд

1980

Алан Кэй изобретает объектно-ориентированное программирование и называет его Smalltalk. В Smalltalk всё является объектом. Даже объект является объектом.

1987

Ларри Уолл становится проповедником и делает Perl доктриной.

1983

Жан Ишбиа решает создать язык, посвящённый Аде Лавлейс и носящий её имя.

1986

Брэд Кокс и Том Лав решают создать специальную, плохочитаемую версию «C» на основе Smalltalk. Своё детище они назовут Objective-C. И по сей день не нашлось ни одного человека, способного понять синтаксис этого языка.

1983

Бьёрн Страуструп отправляется на своем DeLorean назад в будущее, где замечает, что «C» слишком уж быстро компилируется. Когда же в таком случае будут отдыхать разработчики? Чтобы как-то решить проблему, он добавляет в новый язык всё, что только может придумать, и называет своё детище C++.

Программисты повсеместно используют его, чтобы им не мешали читать xkcd на работе, в то время пока «ещё компилируется».

1991

1993

Роберту Иерузалимски и его друзья решают, что им нужен местный язык сценариев — Lua. Трагическая ошибка при переводе с бразильского приводит к тому, что индексы начинают считать с 1.

1994

Расмус Лердорф создает язык шаблонов для своей персональной страницы в интернете.

Но мир решает использовать язык вообще для всего в вебе, так что Расмус добавляет биндинги к базе данных, и на свет появляется PHP.

1995

Юкихиро Мацумото несчастен и замечает несчастье окружающих. Он создаёт Ruby, чтобы сделать окружающий мир чуточку счастливее. Это работает, и все становятся счастливы.

1995

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

Первоначально Брендан пошел в Netscape и сказал, что новый язык называется LiveScript, но Java стала популярной как раз во время код ревью, поэтому все решили, что лучше использовать фигурные скобки и переименовать язык в JavaScript.

Из-за проблем с товарными знаками JavaScript был переименован в ECMAScript во время стандартизации, но это уже никому не важно, все продолжают называть язык JavaScript.

1996

Джеймс Гослинг изобретает Java, первый по-настоящему очень подробный объектно-ориентированный язык программирования, в котором шаблоны проектирования преобладают над прагматизмом.

В обиходе появляются фразы вроде «шаблон поставщика менеджера службы поставщика провайдера диспетчера контейнеров».

2001

Андерс Хейлсберг заново изобретает Java и называет её C #, ведь программирование на «C» круче, чем на Java. Все любят новую Java за то, что она совсем непохожа на Java.

Читайте также:  Снять стружку с дерева

2005

Дэвид Хансен создает фреймворк для Ruby под названием Ruby on Rails. Люди не могут понять, что это две разные вещи, и вновь становятся несчастными.

2006

Джон Резиг пишет вспомогательную библиотеку для JavaScript. Почему-то каждый думает, что это новый язык, и целыми днями копипастит сниппеты JQuery из интернета.

2009

Кен Томпсон и Роб Пайк решили создать новый С, но с меньшим быстродействием и большим количеством талисманов в виде сусликов.

2010

Грэйдон Хор тоже хочет создать новый «C». Если другим можно, почему ему нельзя? Он нарекает детище Rust.

Люди требуют, чтобы каждый фрагмент любого программного обеспечения был переписан на Rust СЕЙЧАС ЖЕ. Грейдон не хочет этим заниматься и уходит работать над Swift для Apple.

2012

Андерс Хейлсберг хочет писать на C# в браузерах, так что изобретает TypeScript, который как JavaScript, но с большей долей «Java» и меньшей «Script».

2013

Джереми Ашкенас хочет быть счастливым, как разработчики Ruby, поэтому создает CoffeeScript, который компилируется в JavaScript, но больше похож на Ruby. Но Джереми никогда не становится так же счастлив, как были когда-то разработчики Ruby.

2014

Крис Латтнер делает язык с целью — не быть как Objective-C. В результате Swift похож на Java.

Источник

Краткая эволюция языков программирования

Краткая эволюция языков программирования главное изображение

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

Машинный язык

Самая ранняя форма языков программирования — это машинный код, состоящий из двоичных инструкций вида 0 и 1. Да, первые программисты писали инструкции именно в таком виде 🥴 Для компьютеров это было очень эффективно, чего нельзя сказать про людей, которые такими данными оперировали. Такой код был очень сложен для восприятия и подвержен множеству потенциальных ошибок в силу человеческого фактора. Так появилось семейство языков ассемблера.

Семейство языков ассемблера

Языки ассемблера в первую очередь предназначались для того, чтобы программирование стало более понятно для человека. Были внедрены мнемонические паттерны, которые подставляли определенные машинные инструкции. Написание такого кода уже стало заметно легче, а использование значимых символов и мнемоники сделало его еще более доступным и понятным для восприятия. Однако языки ассемблера все равно были привязаны к той или иной архитектуре, что ограничивало их использование вне ее. Так начали зарождаться языки высокого уровня.

Читайте также:  Как выглядят семена хвойных деревьев

Языки высокого уровня

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

FORTRAN

Разработанный в 50-x годах Фортран по праву занимает место одного из первых языков программирования высокого уровня. В Фортране было введено понятие циклов и подпрограмм, что на тот момент было достаточно революционно.

LISP

Создан в конце 1950-х годов. Lisp обладал продвинутыми возможностями обработки списков и ввел понятие рекурсии. Впоследствии Lisp оказал большое влияние на будущие языки программирования.

COBOL

Разработан в начале 1960-х годов и был ориентирован на обработку бизнес-данных. При разработке делался упор на простой синтаксис и поддержку англоподобных выражений.

ALGOL

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

PYTHON

Перенесемся ближе к настоящему — конец 80-х — начало 90-х годов. Созданный в конце 80-х, Python приобрел свою популярность за счет простоты и понятного для восприятия синтаксиса. Большое внимание было уделено выразительности кода, что сделало его популярным как у начинающих, так и уже продвинутых программистов.

JAVASCRIPT

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

RUBY

Еще один из популярных языков программирования. Так же как и JavaScript, появился в середине 90-х и стал очень популярным, в частности, из-за фреймворка Ruby on Rails. Ruby славится своим элегантным синтаксисом и, как любят говорить рубисты, — делает программистов счастливыми 🙂

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

Источник

Оцените статью