Practical Foundations for Programming Languages



Bookstore > Books > Practical Foundations for Programming Languages

Practical Foundations for Programming Languages

Free Download
eBookFree
Rating
AuthorRobert Harper
PublisherSelf-publishing
Published2012
Pages590
LanguageEnglish
FormatPaper book / ebook (PDF)
EBook Hardcover Paperback

Types are the central organizing principle of the theory of programming languages. Language features are manifestations of type structure. The syntax of a language is governed by the constructs that define its types, and its semantics is determined by the interactions among those constructs. The soundness of a language design - the absence of ill-defined programs-follows naturally. The purpose of this book is to explain this remark. A variety of programming language features are analyzed in the unifying framework of type theory. A language feature is defined by its statics, the rules governing the use of the feature in a program, and its dynamics, the rules defining how programs using this feature are to be executed. The concept of safety emerges as the coherence of the statics and the dynamics of a language.

In this way we establish a foundation for the study of programming languages. But why these particular methods? The main justification is provided by the book itself. The methods we use are both precise and intuitive, providing a uniform framework for explaining programming language concepts. Importantly, these methods scale to a wide range of programming language concepts, supporting rigorous analysis of their properties. Although it would require another book in itself to justify this assertion, these methods are also practical in that they are directly applicable to implementation and uniquely effective as a basis for mechanized reasoning. No other framework offers as much.





Similar Books


Practical Statistics for Data Scientists, 2nd Edition

Practical Statistics for Data Scientists, 2nd Edition

by Peter Bruce, Andrew Bruce, Peter Gedeck

Statistical methods are a key part of data science, yet few data scientists have formal statistical training. Courses and books on basic statistics rarely cover the topic from a data science perspective. The second edition of this popular guide adds comprehensive examples in Python, provides practical guidance on applying statistical meth...

Price:  $52.29  |  Publisher:  O'Reilly Media  |  Release:  2020

Principles of Programming Languages

Principles of Programming Languages

by Mike Grant, Zachary Palmer, Scott Smith

In this open book, our goal is to study the fundamental concepts in programming languages, as opposed to learning a range of specific languages. Languages are easy to learn, it is the concepts behind them that are difficult. The basic features we study in turn include higher-order functions, data structures in the form of records and vari...

Publisher:  Self-publishing  |  Release:  2020

Masterminds of Programming

Masterminds of Programming

by Federico Biancuzzi, Chromatic

Masterminds of Programming features exclusive interviews with the creators of several historic and highly influential programming languages. In this unique collection, you'll learn about the processes that led to specific design decisions, including the goals they had in mind, the trade-offs they had to make, and how their experience...

Price:  $7.54  |  Publisher:  O'Reilly Media  |  Release:  2009

Regular Expressions Cookbook

Regular Expressions Cookbook

by Jan Goyvaerts, Steven Levithan

This cookbook provides more than 100 recipes to help you crunch data and manipulate text with regular expressions. With recipes for popular programming languages such as C#, Java, JavaScript, Perl, PHP, Python, Ruby, and VB.NET, Regular Expressions Cookbook will help you learn powerful new tricks, avoid language-specific gotchas, and save...

Price:  $7.04  |  Publisher:  O'Reilly Media  |  Release:  2009

Practical C++ Financial Programming

Practical C++ Financial Programming

by Carlos Oliveira

Practical C++ Financial Programming is a hands-on book for programmers wanting to apply C++ to programming problems in the financial industry. The book explains those aspects of the language that are more frequently used in writing financial software, including the STL, templates, and various numerical libraries. The book also describes m...

Price:  $79.99  |  Publisher:  Apress  |  Release:  2015

Building Telegram Bots

Building Telegram Bots

by Nicolas Modrzyk

Learn about bot programming, using all the latest and greatest programming languages, including Python, Go, and Clojure, so you can feel at ease writing your Telegram bot in a way that suits you.This book shows how you can use bots for just about everything: they connect, they respond, they enhance your job search chances, they do technic...

Price:  $25.13  |  Publisher:  Apress  |  Release:  2019

Data Parallel C++

Data Parallel C++

by James Reinders, Ben Ashbaugh, James Brodman, Michael Kinsner, John Pennycook, Xinmin Tian

Learn how to accelerate C++ programs using data parallelism. This open book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples to illustrate key topics.Data parallelism in C++...

Price:  $42.25  |  Publisher:  Apress  |  Release:  2021

Practical Linux Forensics

Practical Linux Forensics

by Bruce Nikkel

Practical Linux Forensics dives into the technical details of analyzing postmortem forensic images of Linux systems that have been misused, abused, or the target of malicious attacks. This essential practitioner's guide will show you how to locate and interpret digital evidence found on Linux desktops, servers, and IoT devices, draw ...

Price:  $44.19  |  Publisher:  No Starch Press  |  Release:  2021