- Full Description
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: (1) Accessible structure guides the student through various programming languages. (2) Seamlessly integrated practice exercises. (3) Classroom-tested. (4) Online support materials. Advance praise: “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
- Table of Contents
Table of Contents
- Specifying Syntax.
- Oriented Programming with C++.
- Oriented Programming with Ruby.
- Functional Programming in Standard ML.
- Language Implementation in Standard ML.
- Logic Programming.
- Formal Semantics.
- Appendix A: The C++ Scanner Class Implementation.
- Appendix B: The Ruby Scanner Class Implementation.
- Appendix C: Standard ML Basis Library.
- Appendix D: SML Calculator Compiler.
- Appendix E: The Factorial Program's Code.
- Appendix F: Small Action Semantic Description.
Please Login to submit errata.No errata are currently published