Denotational Semantics: A Methodology for Language Development
by David Schmidt
Publisher: Kansas State University 2009
Number of pages: 304
Denotational semantics is a methodology for giving mathematical meaning to programming languages and systems. It was developed by Christopher Strachey's Programming Research Group at Oxford University in the 1960s. The method combines mathematical rigor, due to the work of Dana Scott, with notational elegance, due to Strachey. Originally used as an analysis tool, denotational semantics has grown in use as a tool for language design and implementation. This book was written to make denotational semantics accessible to a wider audience and to update existing texts in the area. It presents the topic from an engineering viewpoint, emphasizing the descriptional and implementational aspects. The relevant mathematics is also included, for it gives rigor and validity to the method and provides a foundation for further research.
Home page url
Download or read it online for free here:
by Shuly Wintner - ESSLLI
This text is a mild introduction to Formal Language Theory for students with little or no background in formal systems. The motivation is Natural Language Processing, and the presentation is geared towards NLP applications, with extensive examples.
by Hanne Riis Nielson, Flemming Nielson - John Wiley & Sons
The book covers the foundations of structural operational semantics and natural semantics. It shows how to describe the semantics of declarative as well as imperative language constructs and will also touch upon non-sequential constructs.
by Dennie Van Tassel - Gavilan College
This website contains files on the history of computer programming language statements. The files compare programming language statements in several different languages tracing the statement from early languages to present languages.
by John R. Levine - Morgan Kaufmann
The author presents clear practical advice to help you create faster, cleaner code. You'll learn to avoid the pitfalls associated with Windows DLLs, take advantage of the performance-improving techniques supported by many modern linkers, etc.