|
|
libcats.org
Design Concepts in Programming LanguagesFranklyn A. Turbak, David K. GiffordChoice Outstanding Academic Title, 2009.
Hundreds of programming languages are in use today—scripting languages for Internet commerce, user interface programming tools, spreadsheet macros, page format specification languages, and many others. Designing a programming language is a metaprogramming activity that bears certain similarities to programming in a regular language, with clarity and simplicity even more important than in ordinary programming. This comprehensive text uses a simple and concise framework to teach key ideas in programming language design and implementation. The book's unique approach is based on a family of syntactically simple pedagogical languages that allow students to explore programming language concepts systematically. It takes as its premise and starting point the idea that when language behaviors become incredibly complex, the description of the behaviors must be incredibly simple. The book presents a set of tools (a mathematical metalanguage, abstract syntax, operational and denotational semantics) and uses it to explore a comprehensive set of programming language design dimensions, including dynamic semantics (naming, state, control, data), static semantics (types, type reconstruction, polymporphism, effects), and pragmatics (compilation, garbage collection). The many examples and exercises offer students opportunities to apply the foundational ideas explained in the text. Specialized topics and code that implements many of the algorithms and compilation methods in the book can be found on the book's Web site, along with such additional material as a section on concurrency and proofs of the theorems in the text. The book is suitable as a text for an introductory graduate or advanced undergraduate programming languages course; it can also serve as a reference for researchers and practitioners.
Популярные книги за неделю:
Проектирование и строительство. Дом, квартира, садАвтор: Петер Нойферт, Автор: Людвиг Нефф
Размер книги: 20.83 Mb
Система упражнений по развитию способностей человека (Практическое пособие)Автор: Петров Аркадий НаумовичКатегория: Путь к себе
Размер книги: 818 Kb
Сотворение мира (3-х томник)Автор: Петров Аркадий НаумовичКатегория: Путь к себе
Размер книги: 817 Kb
Радиолюбительские схемы на ИС типа 555Автор: Трейстер Р.Категория: Электротехника и связь
Размер книги: 13.64 Mb
Момент истины (В августе сорок четвертого...)Автор: Богомолов Владимир ОсиповичКатегория: О войне
Размер книги: 1.83 Mb
Только что пользователи скачали эти книги:
Embedded HardwareАвтор: Jack Ganssle, Автор: Tammy Noergaard, Автор: Fred Eady, Автор: Lewin Edwards Lewin Edwards is an embedded engineer with over 15 years experience designing embedded systems hardware firmware and control software., Автор: David J. Katz, Автор: Rick Gentile, Автор: Ken Arnold, Автор: Kamal Hyder, Автор: Bob PerКатегория: Electronics
Размер книги: 10.31 Mb
Making The International: Economic Interdependence and Political OrderАвтор: Simon Bromley, Автор: Maureen Mackintosh, Автор: William Brown, Автор: Marc WuytsКатегория: Экономика
Размер книги: 4.95 Mb
Real World Linux Security: Intrusion Prevention, Detection and RecoveryАвтор: Thomas Erl
Размер книги: 2.82 Mb
Graph Based Representations in Pattern Recognition: 4th IAPR International Workshop, GbRPR 2003, York, UK, June 30 - July 2, 2003. ProceedingsАвтор: Edwin Hancock, Автор: Mario Vento
Размер книги: 4.39 Mb
Alphaville 1988, Crime, Punishment, and the Battle fority's Lower East SideАвтор: Codella Michael, Автор: Bennett BruceКатегория: fiction
Размер книги: 364 Kb
|
|
|