Computer scientists often need to learn new programming languages quickly. The best way to prepare for this is to understand the foundational principles that underlie even the most complicated industrial languages. This text for an undergraduate programming languages course distills great languages and their design principles down to easy-to-learn 'bridge' languages implemented by interpreters whose key parts are explained in the text. The book goes deep into the roots of both functional and object-oriented programming, and it shows how types and modules, including generics/polymorphism, contribute to effective programming. The book is not just about programming languages; it is also about programming. Through concepts, examples, and more than 300 practice exercises that exploit the interpreter, students learn not only what programming-language features are but also how to do things with them. Substantial implementation projects include Milner's type inference, both copying and mark-and-sweep garbage collection, and arithmetic on arbitrary-precision integers.
Protected by Amazon A-to-z Guarantee & generous return policies
Every book purchase is protected by the Amazon A-to-z Guarantee. This guarantee covers both the condition of your book and its timely delivery, providing full buyer protection whether you purchase directly from Amazon or from third-party marketplace sellers.
Generous 30-day return policy on physical books. Amazon makes returns effortless with self-service return labels, drop-off at thousands of local locations (Kohl's, Whole Foods, UPS Stores), and free return shipping on eligible book purchases.
Maximize your savings with competitive pricing, deep discounts on new and used marketplace copies, bundled textbook rentals, and exclusive member savings through Amazon Prime with free fast delivery.
Read your way across versatile digital and physical formats: instant delivery via Kindle eBooks, unlimited reading with a Kindle Unlimited subscription, audiobook listening with Audible (often featuring a 30-day free trial), or traditional paperback and hardcover editions.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.