Programming Languages

An Active Learning Approach

  • Authors
  • Kent Lee

Table of contents

  1. Front Matter
    Pages 1-11
  2. Kent D. Lee
    Pages 1-20
  3. Kent D. Lee
    Pages 1-26
  4. Kent D. Lee
    Pages 1-44
  5. Kent D. Lee
    Pages 1-26
  6. Kent D. Lee
    Pages 1-52
  7. Kent D. Lee
    Pages 1-23
  8. Kent D. Lee
    Pages 1-20
  9. Back Matter
    Pages 1-32

About this book


Programming Languages: An Active Learning Approach introduces students to three programming paradigms: object-oriented/imperative languages using C++ and Ruby, functional languages using Standard ML, and logic programming using Prolog. This interactive textbook is intended to be used in and outside of class. Each chapter follows a pattern of presenting a topic followed by a practice exercise or exercises that encourage students to try what they have just read. This textbook is best-suited for students with a 2-3 course introduction to imperative programming.


Key Features:

  • Accessible structure guides the student through various programming languages
  • Seamlessly integrated practice exercises
  • Classroom-tested
  • Online support materials


Advance Praise for Lee’s Programming Languages: An Active Learning Approach

"The Programming Languages book market is overflowing with books, but none like this. In many ways, it is precisely the book I have been searching for to use in my own programming languages course. One of the main challenges I perpetually face is how to teach students to program in functional and logical languages, but also how to teach them about compilers. This book melds the two approaches very well."

-- David Musicant, Carleton College



Action C++ C++ programming language Factor ML Prolog Ruby Standard ML compiler functional programming logic programming programming language semantics

Bibliographic information

  • DOI
  • Copyright Information Springer-Verlag US 2008
  • Publisher Name Springer, Boston, MA
  • eBook Packages Computer Science
  • Print ISBN 978-0-387-79421-1
  • Online ISBN 978-0-387-79422-8
  • Buy this book on publisher's site