Programming Language Concepts
Book information
Description
Programming Language Concepts uses a functional programming language (F#) as the metalanguage in which to present all concepts and examples, and thus has an operational flavour, enabling practical experiments and exercises. It includes basic concepts such as abstract syntax, interpretation, stack machines, compilation, type checking, and garbage collection techniques, as well as the more advanced topics on polymorphic types, type inference using unification, co- and contravariant types, continuations, and backwards code generation with on-the-fly peephole optimization. Programming Language Concepts covers practical construction of lexers and parsers, but not regular expressions, automata and grammars, which are well covered elsewhere. It throws light on the design and technology of Java and C# to strengthen students’ understanding of these widely used languages. The examples present several interpreters and compilers for toy languages, including a compiler for a small but usable subset of C, several abstract machines, a garbage collector, and ML-style polymorphic type inference. Each chapter has exercises based on such examples. Front Matter....Pages I-XIV Introduction....Pages 1-12 Interpreters and Compilers....Pages 13-29 From Concrete Syntax to Abstract Syntax....Pages 31-56 A First-Order Functional Language....Pages 57-76 Higher-Order Functions....Pages 77-91 Polymorphic Types....Pages 93-113 Imperative Languages....Pages 115-136 Compiling Micro-C....Pages 137-154 Real-World Abstract Machines....Pages 155-174 Garbage Collection....Pages 175-199 Continuations....Pages 201-223 A Locally Optimizing Compiler....Pages 225-243 Back Matter....Pages 245-278
Similar books
Pro ASP.NET 2.0 in C# 2005
2005 · PDF
Expert Oracle JDBC Programming
2005 · PDF
PHP Objects, Patterns, and Practice
2008 · PDF
Guide to ILDJIT
2011 · PDF
Accelerated C# 2010
2010 · PDF
PHP for Absolute Beginners
2010 · PDF
Beginning XNA 3.0 Game Programming: From Novice to Professional
2009 · PDF
Guide To Assembly Language: A Concise Introduction
2020 · PDF