CS 4536: Programming Languages (C06)

Lectures

We will be using the text Programming Languages: Application and Interpretation, which is available online in PDF format. (chapter numbers in the lecture schedule below refer to the text)

The Wilson survey is available as bigsurv.pdf under the root URL for the course (link omitted to duck search engines)

DateTopicChapters
Mar 2Security
Feb 28FrTime38
overview paper
Applied to debugging
Feb 27ExtensibilityThe Problem and an OO-based solution
Units and Mixins
Feb 24Model Checking
Feb 23Implicit Polymorphism31
Feb 21More Type Inference30
Feb 20Type Inference30
Feb 17Explicit Polymorphism29
Feb 14Type Soundness28
Feb 13Type Judgments and Typing Control25, 26
Feb 10Introduction to Types24, 25
Feb 9Garbage CollectionWilson's survey Sects 6.1-6.2, 7.1-7.2, 9
Feb 7Garbage CollectionWilson's survey Sects 2.6-2.8, 4.1, 4.5-4.6
Feb 6Garbage Collection21, Wilson's survey Sects 1, 2.1-2.4
Feb 3Continuations continuedmore 19
Feb 2Continuations19
Jan 31Thinking about Web Programs15,16
Jan 30Implementing Recursion10
Jan 27Understanding Recursion9
Jan 26Implementing Laziness8
Jan 24More Haskell
Jan 23Closures; Intro to Haskell7; also see additional Haskell notes
Jan 20First-Class Functions6
Jan 19Delayed Substitution5
Jan 17Functions4
Jan 16Substitution3
Jan 13Modeling Languages1 and 2
Jan 12Scheme Reviewposted code samples

Scheme Material

If you need a Scheme reference, see Chapters 1-6 of Teach yourself Scheme in Fixnum Days or How to Design Programs (the intro text that goes with DrScheme). We will use the following constructs/concepts this term: functions, conditionals, symbols, user-defined datatypes (using define-type, covered in class notes only), lists, functions as arguments, let/local.

Sample programs reviewing key constructs

Practice Problems