Юридические новости

Великие забытые: самые влиятельные и почти утерянные языки программирования прошлого

Юридические новости
Most (ly Dead) Influential Programming Languages (2020)

Погружение в историю программирования раскрывает важнейшие языки, которые, несмотря на потерю популярности, оказали глубокое влияние на современные технологии и методы разработки. Обзор утраченных, но не забытых языков, от COBOL до Smalltalk, раскрывает их роль и наследие.

История программирования — это не только учебник по технологиям, но и увлекательное путешествие по миру идей, открытий и инноваций, которые формировали современные языки. Многие языки программирования, некогда лидеры или новаторы, сегодня считаются устаревшими или даже «мертвыми». Однако, несмотря на утрату актуальности, они продолжают жить в нашей повседневной практике через концепты и идеи, которые они подарили миру. Разобраться в том, почему некоторые из них вымерли, а другие навсегда изменили ИТ-индустрию — важная задача для всех, кто интересуется развитием программирования и хочет понять, что стоит за современным кодом. Начать стоит с одного из четырёх «материнских» языков – COBOL.

Созданный в 1960 году для бизнес-приложений, COBOL стал восприниматься как устаревшая технология и даже сюжет для шуток, однако он до сих пор активно используется в критически важных корпоративных системах, особенно в банках и правительственных учреждениях. Его главная инновация — введение структурированных данных и записи, которые позволили работать с вложенной и иерархической информацией. Эта идея предвосхитила современные структуры данных и объекты. Упадок COBOL объясняется не столько техническими ограничениями, сколько тем, что после его появления академическая среда и разработчики мало обращали внимание на этот язык. Сложность языка и устаревшие компиляторы сделали COBOL непопулярным для новых проектов, но наследие его живёт в продолжении бизнес-среды.

ALGOL — ещё один «материнский» язык, чаще остающийся в тени более известных собратьев. Хотя сегодня он практически не используется, влияние ALGOL невероятно глубоко. Именно этот язык заложил основы структурного программирования, лексического областного видения переменных, встроенных функций и формальных спецификаций языков, включая использование Backus-Naur Form (BNF) для описания синтаксиса. Практически все современные языки унаследовали от ALGOL основные принципы и синтаксис. ALGOL же исчез не из-за технических дефектов, а потому что был исследовательским, а не коммерческим проектом.

Отсутствие стандартного ввода-вывода делало его сложным для применения на практике, а развитие многочисленных ответвлений похоронило оригинал. Язык APL известен своей уникальной концепцией обработки массивов и необычайно лаконичным, хоть и «экзотическим» синтаксисом. Созданный в начале 60-х, он стал революционным для научных вычислений, позволив работать с массивами целиком, использовать матричные операции и свёртки без реализации классических циклов. Благодаря этому APL положил основу для современных математических и научных библиотек — таких как NumPy в Python и Matlab. Однако, его специализированный набор символов и сложность ввода привели к сокращению количества пользователей.

Последующие языки, например J, пытались упростить использование APL, заменяя символы на ASCII, но на это потребовалось слишком много времени, и парадигма так и не получила широкого распространения в современных приложениях. BASIC заслужил место в сердцах миллионов новичков благодаря своей простоте и доступности. Несмотря на то, что в научном плане он сравнительно прост, BASIC сыграл важную социальную роль, предоставив возможность программировать тем, кто раньше не мог себе это позволить — школьникам, любителям и владельцам первых персональных компьютеров. Появление интерпретаторов в реальном времени сделало процесс обучения дружелюбным и наглядным. Со временем, когда на рынок вышли более мощные машины, BASIC потерял позиции, уступив место языкам с более строгой типизацией и структурированность, таким как Паскаль и C.

Впрочем, благодаря Visual Basic, BASIC получил вторую жизнь в сфере автоматизации офисных приложений, но и там постепенно сменяется современными решениями. PL/I — язык, предпринявший амбициозную попытку создать универсальный инструмент и для науки, и для бизнеса. Это привело к обилию возможностей и усложнённости синтаксиса, что в итоге и стало одной из причин его упадка. Несмотря на критику от создателей ALGOL, PL/I первым принёс такие важные концепции, как структурированные типы данных, указатели и перегрузка функций. Многие из идей PL/I позже трансформировались в компоненты широко распространённого языка C.

Тем не менее слишком сложная модель, а также монополия IBM на компиляторы ограничили адаптацию языка за пределами крупных компаний. Революционные идеи объектно-ориентированного программирования зародились в SIMULA 67 — расширении ALGOL для моделирования объектов и событий. SIMULA заложил фундамент концепций классов, наследования, виртуальных методов и инкапсуляции, которые знаем сегодня. Многие языки, особенно C++ и Smalltalk, восприняли идеи SIMULA и адаптировали их. Правда, производительность SIMULA была низкой, что ограничило его применение вне исследовательских целей и крупных машин.

На практике язык уступил место более оптимизированным и удобным объектно-ориентированным системам на базе C++ и Java. Паскаль, созданный Никлаусом Виртом, стал языком для обучения и прототипирования, вобравшим в себя множество концепций ALGOL и упростившим их использование. Несмотря на недостаток новых идей, Паскаль обеспечил развитие шагового уточнения — методологии для тщательной и поэтапной разработки программ. Вместе с его наследниками — Modula и Oberon — Паскаль повлиял на появление модульных систем и формальных методов проверки программ. Хотя язык и уступил популярность C и C++, Паскаль дал мощный толчок образовательной среде и программной инженерии.

Язык CLU с 1975 года представил абстрактные типы данных и обошёл по уровню инноваций многие современные аналоги. В CLU появились итераторы, универсальные типы (generics), а также механизмы обработки исключений с проверкой на этапе компиляции. Несмотря на значимость, язык остался в исследовательской области, а ключевые идеи были взяты на вооружение другими системами. Барбара Лисков, создатель CLU, продолжила работу в области параллелизма и распределённых вычислений с Argus, который получил менее заметное распространение. ML — язык, созданный для поддержки формальных доказательств, сыграл важнейшую роль в развитии статически типизированных функциональных языков.

Тип инференс, впервые реализованный в ML, позволил программистам писать типы без явного указания, что значительно упростило программирование. Многие современные языки, включая F# и OCaml, вдохновляются наследием ML. Тем не менее, ML оставался языком преимущественно исследовательским, уступив место более чистым функциональным языкам, таким как Haskell. Smalltalk олицетворяет истинное объектно-ориентированное программирование, где «всё — объект». Созданный в 1970-х под руководством Алана Кэя, Smalltalk популяризировал многие ключевые концепции ООП и оказал огромное влияние на дизайнеров последующих языков, включая Java и Ruby.

Несмотря на превосходные идеи, Smalltalk столкнулся с проблемами производительности и совместимости, что вместе с появлением Java лишило его позиции лидера. Smalltalk продемонстрировал, как важно не только создавать новые концепции, но и адаптировать их к реалиям индустрии. Перечисленные языки — лишь вершина айсберга в истории программирования. Многие системы, включая BPCL, Ada, Eiffel и другие, сыграли свою роль в развитии софта. Они повлияли на современные методологии, парадигмы и инструменты, хотя сами давно вышли из употребления.

Автоматическая торговля на криптовалютных биржах Покупайте и продавайте криптовалюты по лучшим курсам Privatejetfinder.com (RU)

Далее
Trump administration ends Polymarket investigations without charges
Четверг, 23 Октябрь 2025 Завершение расследования в отношении Polymarket: как администрация Трампа повлияла на исход дела

Расследования в отношении криптовалютной платформы Polymarket были закрыты без предъявления обвинений, что стало значимым событием для сферы онлайн-беттинга и криптовалют. Обзор развития событий, действий регуляторов и влияния администрации Дональда Трампа на процесс.

Federal Prosecutors Close Inquiry into Polymarket Betting Website
Четверг, 23 Октябрь 2025 Федеральные прокуроры закрыли расследование вокруг сайта ставок Polymarket

Закрытие федерального расследования в отношении Polymarket знаменует важный этап в регулировании криптовалютных платформ для ставок и предвыборных прогнозов, открывая новые перспективы для индустрии и понимания законодательных рамок в США.

Coding Agent Bake Off: Which Is Best?
Четверг, 23 Октябрь 2025 Лучшие кодировочные агенты 2025 года: сравнение Claude Code, Codex, Cursor и Gemini

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

Sustainable Construction Practices That Add Value to Your Home [video]
Четверг, 23 Октябрь 2025 Экологическое строительство: как устойчивые практики повышают ценность вашего дома

Узнайте, как внедрение устойчивых строительных методов не только снижает воздействие на окружающую среду, но и увеличивает рыночную стоимость вашего жилья за счет энергоэффективности, долговечности и современного дизайна.

The Company That Refuses to Decouple
Четверг, 23 Октябрь 2025 Компания, которая отказывается «развязываться»: история успеха Walmart в Китае

Рассказ о том, как Walmart преодолевает трудности на китайском рынке и сохраняет ключевую роль в торговле между Китаем и США несмотря на политическую и экономическую напряжённость.

Ask HN: Tell me, what is your favorite programming language?
Четверг, 23 Октябрь 2025 Какие языки программирования выбирают разработчики: мнение сообщества Hacker News

Обзор любимых языков программирования по мнению активных разработчиков с платформы Hacker News. Анализ предпочтений, причины выбора, а также взгляд на перспективы популярных и нишевых языков.

Show HN: ArguSeek – Agent‑first deep‑search API for hard‑to‑find dev answers
Четверг, 23 Октябрь 2025 ArguSeek – инновационный API для глубокого поиска сложных технических ответов

ArguSeek представляет собой современный API, который помогает разработчикам быстро находить редкие и сложные ответы в сфере программирования и разработки. Благодаря агент-ориентированному подходу, этот инструмент значительно упрощает процесс поиска и экономит время IT-специалистов.