Книги / Алгоритмы и теория / Теория / Types and Programming Languages

Types and Programming Languages

Benjamin C. Pierce

Книга «Types and Programming Languages» Бенджамина Пирса — это фундаментальный учебник по теории типов и её применению в языках программирования. Она охватывает широкий спектр тем: от базовых понятий, таких как нетипизированное лямбда-исчисление и арифметические выражения, до сложных систем типов, включая простые типы, подтипирование, рекурсивные типы и полиморфизм.

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

Особое внимание уделяется метатеории: свойствам сохранения и прогресса, нормализации, алгоритмическим аспектам проверки типов. Книга также включает практические реализации на ML, что позволяет читателю увидеть, как теоретические концепции воплощаются в коде.

Кейс-стади, такие как императивные объекты и Featherweight Java, демонстрируют применение теории типов к реальным языкам программирования. Это делает книгу ценной не только для теоретиков, но и для разработчиков компиляторов и дизайнеров языков.

«Types and Programming Languages» считается классическим учебником, который глубоко и систематично объясняет, как типы обеспечивают безопасность и корректность программ. Она станет незаменимым ресурсом для всех, кто хочет понять, как устроены современные системы типов.