Principles of Programming Languages



Bookstore > Books > Principles of Programming Languages

Principles of Programming Languages
Free Download
eBookFree
Rating
AuthorsMike Grant, Zachary Palmer, Scott Smith
PublisherSelf-publishing
Published2020
Pages163
LanguageEnglish
FormatPaper book / ebook (PDF)
EBook Hardcover Paperback

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 variants, mutable state, exceptions, objects and classes, and types. We also study language implementations, both through language interpreters and language compilers. Throughout the book we write small interpreters for toy languages, and in Chapter 8 we write a principled compiler. We define type checkers to define which programs are well-typed and which are not. We also take a more precise, mathematical view of interpreters and type checkers, via the concepts of operational semantics and type systems. These last two concepts have historically evolved from the logician's view of programming.

The material has evolved from lecture notes used in a programming languages course for juniors, seniors, and graduate students at Johns Hopkins University. While the book uses formal mathematical techniques such as operational semantics and type systems, it does not emphasize proofs of properties of these systems. We will nonetheless sketch the intuitions of some proofs.





Similar Books


History of Programming Languages

History of Programming Languages

by Thomas J. Bergin, Richard G. Gibson

This specially prepared work comprises a living archive of important programming languages, described by the people most instrumental in their creation and development. Drawn from the ACM/SIGPLAN Second History of Programming Languages Conference, this volume, like the earlier book from the first such conference (HOPL), conveys the motiva...

Price:  $40.94  |  Publisher:  Addison-Wesley  |  Release:  1996

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 experiences hav...

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

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

Learn Programming in Python with Cody Jackson

Learn Programming in Python with Cody Jackson

by Cody Jackson

Python is a cross-platform language used by organizations such as Google and NASA. It lets you work quickly and efficiently, allowing you to concentrate on your work rather than the language. Based on his personal experiences when learning to program, Learn Programming in Python with Cody Jackson provides a hands-on introduction to comput...

Price:  $34.99  |  Publisher:  Packt Publishing  |  Release:  2018

Seven Languages in Seven Weeks

Seven Languages in Seven Weeks

by Bruce A. Tate

You should learn a programming language every year, as recommended by The Pragmatic Programmer. But if one per year is good, how about Seven Languages in Seven Weeks? In this book you'll get a hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Whether or not your favorite language is on that list, you'll broaden your ...

Price:  $12.86  |  Publisher:  The Pragmatic Programmers  |  Release:  2010

Transactions on Pattern Languages of Programming III

Transactions on Pattern Languages of Programming III

by James Noble, Ralph Johnson

The Transactions on Pattern Languages of Programming subline aims to publish papers on patterns and pattern languages as applied to software design, development, and use, throughout all phases of the software life cycle, from requirements and design to implementation, maintenance and evolution. The primary focus of this LNCS Transactions ...

Publisher:  Springer  |  Release:  2013

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

Swift OS X Programming for Absolute Beginners

Swift OS X Programming for Absolute Beginners

by Wallace Wang

Swift OS X Programming for Absolute Beginners is your step-by-step guide to learning how to code using Swift, Apple's hottest new programming language. This book will not only teach complete programming novices how to write OS X programs, but it can also help experienced programmers moving to the Macintosh for the first time. You will lea...

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