Stuff related to CSCI 56500. I’m taking this course during Fall 2011 semester at IUPUI, taught by Prof. Rajeev Raje.
Text book: Advanced Programming Languages Design by Raphael Finkel. This book is available online.
Introduction
Recommended Reading
- EWD 215: A Case against the GO TO Statement.
- EWD 418: Guarded commands. non-determinacy and a calculus for the derivation of programs.
Control Structures
- Coroutine — Wikipedia
- Coroutines — Prog. in Lua
Semantics
Recommended Reading
- Barbara Liskov’s substitution principle. PS,Wikipedia, Explanation using C++, using Java, Discussion on StackOverflow.com.
- Exception Handling: Issues and a proposed notation(PDF!)
Reference books
- Introduction to Theory of Programming Languages — Bertrand Meyer.
- The Study of Programming Languages. — Ryan Stansifer. Lecture notes from PL Concepts (UG?)
- The Anatomy of Progamming Languages —Fischer and Grodzinsky. Amazon $0.01
- Concepts of Programming Languages —Sebesta.Amazon. Lecture notes from the author.
- Programming Languages: Concepts and Constructs — Ravi Sethi
- Foundations of Programming Langauges — Roosta.
Related Courses
Prof Weimer of Virginia university is teaching CS 6610 - Design And Analysis Of Programming Languages in Fall 2011, which is quite interesting for a student of CSCI 56500.
Notes
Interesting links
- It appears Lua gets the multiple return idea from Prof. Liskov’s CLU language, which we studied in Chapter 2.
Open Questions
- Do langauges that have S-expressions make it easy to implement continuations?