6

Мне очень понравилось Douglas Crockford's recent lecture series, особенно разговор, в котором рассказывается история языков программирования. Я хотел бы узнать об этом предмете более подробно.Каковы некоторые высоко ценимые книги по (современному или историческому) языку программирования языков программирования?

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

+0

Этот вопрос слишком субъективен для переполнения стека, но идеально подходит для [Programmers.SE] (http://programmers.stackexchange.com). – 2010-09-18 23:39:34

+0

Спасибо, Марк. Я не знал об этом сайте. Я буду задавать вопросы такого рода, а не здесь в будущем. – davidchambers

ответ

5

Каждые 15 лет, АКМ ставит на History of Programming Languages конференции (ласково называют HOPL). Материалы исключительно высокого качества и доступны, к сожалению, только за платной платой ACM. (Тем не менее, если вы обращаетесь к ним с IP-адреса университета, колледжа или школы, вы должны иметь к ним доступ.)

Для HoPL-III (2007), Гвидо ван Россум хотел представить статью о Питоне, но он не смог чтобы своевременно удовлетворить требования к обзору, поэтому он published it in form of a blog instead.

Несколько докладчиков также бесплатно опубликовали свои документы в дополнение к официальным конференциям. Кроме того, несколько докладчиков снова дали тот же самый разговор в другом месте. Например, Гай Л. Стил-младший и Ричард П. «Дик» Габриэль повторил свой «50 in 50» (который, как вы можете себе представить, если вы когда-либо видели разговор Гая Стил или Дика Габриэля, на самом деле не говорить, скорее, как музыкальное искусство, скрещенное с стихотворным шлемом, встречается с Бродвеем), в котором представлено 50 языков программирования по 50 слов каждый.

Как уже упоминалось выше @Missing Faktor, а не только Оберон Project, но все языков Никлаус Вирт являются чрезвычайно хорошо документированы: Algol-60, Algol-X, Algol-W, Pascal, Modula-2 , и Оберон.

0

«Архитектура параллельных программ», в конце Per Brinch Хансен, включает хороший обзор дизайна и обоснование его Concurrent Pascal язык, который добавил мониторы (и другие вещи) к его последовательному Паскалю, правильному подмножеству Паскаля.

Большая вещь, отсутствующая в Последовательном Паскале, является указателем.Однако, учитывая ограничения, предназначенные для размещения в программах Sequential Pascal, все, что вы можете сделать, с помощью указателя, который вы также можете сделать с индексом массива, и более безопасным способом, «безопасным» в том смысле, что это невозможно (и проверено компилятором!) делать нелегальные вещи.

1

Обоснование для проектирования языка программирования Ada:

http://www.amazon.com/Rationale-Design-Programming-Language-Companion/dp/0521392675

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