Theory of Programming Languages
Spring 2011
Documents
- Schedule - Revised April 17, 2011
- Syllabus and Policies - Revised January 8, 2011
- Academic Honesty
Projects
- Language Project One
- Language Project Two
- Final Project Outline and Example
- Final Project Evaluation Checklist
Languages
- All About Erlang
- Free Programming Languages
- A multi-language online IDE
- 16-bit COBOLv3
- Code Pad - Another multi-language online IDE
- CUSP: a LISP plug-in for Eclipse from IBM
- Play with LISP in a browser (Limited LISP)
- Ufasoft LISP Studio - a Common LISP IDE
- Arc - a new dialect of Lisp
- newLISP- a newer dialect of Lisp
- Standard ML of New Jersey
- GNU Prolog
- XGP - A GNU Prolog Mac OS X IDE
- Play with Prolog in a browser (Java applet)
- Try Haskell in a browser
- G95 Fortran
- SilverFrost Fortran
- TinyCOBOL
- C compiler in a browser
- Jasmin at SourceForge
Resources
- Computer History Timeline
- Microsoft Research - The F# language
- MSDN F# Blog
- zip: C# 3.0 Language Spec from Microsoft
- A-to-Z of Programming Languages
- The Go Language Spec from Google
- Jasmin Tutorial
- LISPs Listing
- Arc documentation and examples
- zip: ML Code Examples
- ML tutorial
- OMeta attribute grammar example
- Microsoft's Parallel Computing Developer Center
Articles
- Why We Need New Languages
- Parallel computing support in the next version of Visual Studio
- Erlang for Concurrent Programming
- Real-world Concurrency
- Examples of Many Languages
- Article about .Net developments
- Advanced Topics in Programming Languages
- COBOL Turns 50 Years Old
- C# / CLI Source Code (Rotor)
- Dynamic Programming Futures
- OS Kernel Proven Correct and Free of Bugs
-
Software Engineering Radio
I really like these folks. Highly recommended. Here are a few episodes to get you started:
Items of Interest
- xkcd LISP joke
- Programmers' Last Words
- LISP song
- Write in C (Apologies to John, Paul, George, and Ringo. Well, maybe not to Ringo.)
- C Recursion - by Kernighan, Ritchie, and Lovecraft
- Comments on Comments
History Presentation Hall of Fame
- Smalltalk's Influence on Modern Programming - by Matt Savona, 2008
- Simula - paper by Joe Casey, 2008
- Smiula - presentation by Joe Casey, 2008
Final Project Hall of Fame
- HAL - by Caitlin Cellier, 2011
- not(FUN) - by Michael Cohoon, 2011
- MaRVN - by John Dunham, 2011
- JFun - by Greg Guida, 2010
- JavaSCAR - by Joey Carmello, 2010
- GLaDOS-script - by Ryan Sullivan, 2010
- Steve# - by Steven Abbagnaro, 2010
- C'thulu - by Shane Steinert, 2010
- Shingle - by Skyler Dodge, 2009
- GLaDOS - by Neal Tanner, 2009
Class Notes
- Chapter One
- Chapter Two
- Chapters Three and Four
- Chapter Fifteen (Functional languages)
- Chapter Sixteen (Logic Programming)
- Chapter Five
- Chapter Nine and a little bit of Chapter 10
- Chapter Six
- Chapter Thirteen
I reserve the copyright for all parts of my courses.
Commercial reproduction of any course material, including lecture notes
taken by students, without my EXPRESS WRITTEN consent, is prohibited.
Seriously.