Что представляет собой мертвый язык программирования? [закрыто]

18

Представьте, что вы были избраны коронером IEEE или каким-либо другим органом управления, и вам пришлось объявить язык программирования мертвым. Какие признаки вы бы искали? Существуют ли языки зомби, которые не знают, что они уже мертвы?

Питер Тернер
источник
7
Что вы определяете как язык? FORTRAN I и Fortran 95 - это один и тот же язык? Лисп 1.5 и Common Lisp или Схема? Они меньше чем, скажем, Алгол и Паскаль?
Дэвид Торнли
Это хороший вопрос, на который я не могу точно ответить. Люди, отвечавшие на этот вопрос, казалось, воспринимали его как атомарный язык (т. Е. B - это не C), так что я уступлю их пониманию.
Питер Тернер
@ Питер Боутон, ты хотя бы получил ссылку на Мегадет?
Питер Тернер
1
@Peter (не я) megadeth.com/discography.php?era_id=4 Вы не можете иметь Священные войны без Наказания. Довольно классная песня, на самом деле о The Punisher.
Питер Тернер
1
@Peter Turner, эта песня была также о туре, в котором участвовал Мегадет в Ирландии, и Мастейн увидел огромный протестантско-католический бунт. Он подробно описывает это в своей недавно вышедшей автобиографии.
Джесси С. Slicer

Ответы:

34

Компьютерные языки никогда не умирают; они только превращаются из чрезмерно перегруженных в недостаточно используемые. Кто-то всегда заново откроет старый язык и выучит его, просто для удовольствия.

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

  1. B и BCPL вдохновили C
  2. СНОБОЛ вдохновил икону
  3. Алгол вдохновил слишком много языков, чтобы сосчитать
imgx64
источник
Алгол! Второе упоминание через столько же дней. Только вчера (или было сегодня) было первое упоминание об Алголе, которое я видел на любом сайте StackExchange, хотя поиск обнаружил много.
Марк С
Согласился, но только в противоположность ответу programmers.stackexchange.com/questions/9521/… (Mild Fuzz), используя сравнение с лингвистикой. Вы говорите, что до тех пор, пока мы не сожжем нашу документацию и исходный код, не существует такого понятия, как исчезновение языка программирования - но язык должен быть объявлен тостом, прежде чем вы сможете соскрести сгоревший материал и съесть его.
Питер Тернер
2
Даже C «имеет значительный долг перед Алголом 68», см. Деннис М. Ритчи (январь 1993 г.): «Схема типового состава, принятая C, задолжала Алголу 68, хотя, возможно, она не возникла в такой форме, что Приверженцы Алгола одобрили бы ". , «Развитие языка Си». cm.bell-labs.com/cm/cs/who/dmr/chist.html . Получено 1 января 2008 г.
NevilleDNZ
2
Язык может быть мертвым, если нет аппаратного обеспечения, на котором вы можете его запустить (и эмуляторы не могут быть написаны, потому что не осталось спецификаций).
Quant_dev
42

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

Мягкий пух
источник
Под какой системой вы не подразумеваете ни активный компьютер (например, Commodore), ни активно разработанную ОС (например, DOS), или и то и другое?
Питер Тернер
Может быть, система, которая больше не поддерживается производителем?
Мягкий пух
9
Мертвый язык - это язык, который вряд ли когда-либо изменится. Отсутствие значительного количества разговорных носителей является необходимым условием для этого, но мертвый обычно означает неизменный, по крайней мере, насколько я понимаю.
Тим Пост
@TimPost, это отличное определение. Подумайте, как латынь использовалась годами в качестве основного языка в науке после того, как она давно исчезла, или как в банковском мире старые мейнфреймы все еще используют программы, написанные на древних языках программирования, которые все еще необходимо поддерживать - программы, то есть.
Леголас
@TimPost: я не думаю, что это случай по определению, но в результате язык не используется. Я бы не назвал язык мертвым, если он используется, но не изменен, но это случается очень редко.
reinierpost
22

Язык мертв, когда никто, находящийся в здравом уме, никогда не станет заниматься новым проектом. Точно так же, как мертвые человеческие языки не являются абсолютно неактуальными (потому что мы изучаем историю), мертвые языки программирования не являются абсолютно неуместными (потому что мы поддерживаем весь этот грубый исторический код).

dsimcha
источник
2
Итак, Tcl мертв? Пакетные скрипты мертвы? Кажется, это довольно популярно для меня, хотя я бы никогда не реализовал ничего нового, используя ...
Билли ONeal
3
@ Билли: Пакетные скрипты отлично подходят для очень быстрого и грязного кода, который занимает не более нескольких строк, потому что интерпретатор только там. Что касается TCL, я так мало знаю об этом, что не могу комментировать разумно.
дсимча
@dsimcha: Может быть и так, но я видел пакетные сценарии с десятками тысяч строк. Не то, что я бы начал новый проект, но, конечно, не мертвый. Запуск новых проектов - это слишком высокая планка, чтобы с ней встречаться; большинство программных проектов не являются проектами с нуля.
Билли ONEAL
1
@ Билли: Но я хочу сказать, что вы бы начали новый проект с пакетными сценариями, даже если этот проект крошечный.
дсимча
@dsimcha: Эээ .. нет, я бы не стал. Прочитайте мой предыдущий комментарий еще раз.
Билли Онил
5

Если бы я был коронером IEEE, я бы искал те же признаки, которые лингвисты используют для определения того, является ли естественный язык умирающим / мертвым, а именно.

  1. Сколько программистов все еще используют язык?
  2. Каков средний возраст его пользователей?
  3. Какой процент самого молодого поколения программистов свободно владеет языком?

Исходя из этих критериев, я предполагаю, что КОБОЛ умирает. Несмотря на 220 базисных LOC, написанных на COBOL, согласно этой статье 2006 года в CW, средний возраст программистов на COBOL к настоящему времени уже превысил 50 лет. Хотя я не мог найти точную статистику, я бы предположил, что среднестатистическому программисту на Java, по сравнению с ним, за двадцать. Апологеты COBOL отмечают, что около 5B LOC по-прежнему пишутся на COBOL ежегодно, но я не думаю, что это надежный показатель: я мог бы переписать 10 строк COBOL в 1 строку Perl или несколько нажатий клавиш в J-- Кобол - довольно многословный язык.

Еще один
источник
2
IBM полностью поддерживает и разрабатывает среды COBOL.
3

Язык программирования не умер, если вы можете найти какую-то его спецификацию, из которой вы можете создать компилятор или интерпретатор, способный запускать программы на работающем компьютере.

mouviciel
источник
2
Но как насчет качества жизни?
JeffO
5
в лингвистике то, что вы описываете, - это вымерший язык, который не может быть воскрешен, потому что у нас больше нет информации, чтобы переучить его. Мертвый язык не так уж серьезен.
Мягкий пух
2
  • Сколько книг было опубликовано об этом языке в последнее время?
  • Сколько разговоров (IRC, электронная почта, блоги) было сгенерировано об этом языке в последнее время?
  • Сколько программистов самоиронично идентифицируют себя как выходцы из этого языка?

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

Марк Канлас
источник
Показательный пример Delphi, из которого я родной. У этого есть некоторая активная болтовня и множество исторической, но все еще актуальной болтовни. У него были приверженцы, вы можете составить собственное мнение об иронии. Но книги, как ни странно, отсутствуют в толстом проходе в Барнсе и Нобле между С и Эрлангом. Они существуют, доктор Боб и Марко Канту все еще практикуют свое ремесло, но распространение книг, по-видимому, в основном ориентировано на Интернет и конвенции.
Питер Тернер
2
У Delphi никогда не было много книг, даже когда это было очень популярно.
GrandmasterB
1

Мнения людей определяют мертвость

  1. Человек заходит в модный бар в стиле хай-тек.
  2. Человек начинает говорить о классных функциях в COBOL.
  3. Люди начинают отступать, давая вам все более широкое место.
  4. Люди все вокруг ухмыляются
  5. Человек узнает, что Кобол кажется довольно мертвым, да?

PS У меня было искушение использовать «женщину» или человека »вместо мужчины, но я не хочу подразумевать, что [женский] пол был связан с ним, было искушение использовать« человека », но звучало странно, учитывая нашу историю« мужчины » ходит в бар »в стиле шутки. Ну, во всяком случае, по крайней мере, я думаю о материале.

Майкл Даррант
источник
1

Для меня есть разница, решил ли комитет, что что-то мертво или что-то мертво для меня.

Например, Forth сам по себе мертв для меня: не так много текущих проектов Forth, из которых я могу извлечь уроки, не так много активных списков рассылки или форумов, куда я мог бы обратиться за помощью, и не так много доступных библиотек.

Форт-подобный язык, Фактор , с другой стороны, кажется более живым. Я бы не назвал его мертвым, даже если он не менее неясен, чем Форт.

LennyProgrammers
источник