Ответ 1
Паскаль имел перечисленные типы, но не использовал ключевое слово enum
. AFAIK, ключевое слово enum
впервые было использовано C, но концепция старше с большим отрывом.
См. Википедию на Перечислимый тип для примера, например:
type
cardsuit = (clubs, diamonds, hearts, spades);
card = record
suit: cardsuit;
value: 1 .. 13;
end;
var
hand: array [ 1 .. 13 ] of card;
trump: cardsuit;
Я думаю, что Паскаль - самый старый из языков, перечисленных на странице Википедии. LISP называется Common Lisp, который публикует Pascal, даже если оригинальный LISP легко предваряет Pascal.
Язык программирования Pascal из 1970 перечисляет эти типы в разделе 6.1.1 "Скалярные типы", поэтому для всех практических целей эти перечисленные типы всегда был частью Паскаля. См. Страницу documents на веб-сайте Standard Pascal, Пересмотренный отчет также имеется там (1972) и, вероятно, является более широко читаемым документом. Вы также можете отследить Pascal в Википедии, конечно.
(Может быть, еще один более ранний язык с аналогичными особенностями, я его не идентифицировал, но я не выглядел повсюду. Алгол-60 не был таким языком, как и Фортран или Кобол. Алгол-68 и PL/1 являются возможными соперниками.)