CS 210: Programming Languages
Instructor: Michael Wilder
Email: mdwilder@uidaho.edu
Office Hours: MWF 12:30 - 1:20 in JEB 226
Syllabus
Get it here
Reference Materials
Standard ML of New Jersey
Overview of cscheckin
Overview of the course server
CCX Samples
ccx_start.l
Slides
Part 1: Overview
Part 2: Defining Program Syntax
Part 3: Where Syntax Meets Semantics
Part 4: Language Systems
Part 5: A First Look at ML
Part 6: Types
Part 7: A Second Look at ML
Part 8: Polymorphism
Part 9: A Third Look at ML
Part 10: Scope
Part 11: A Fourth Look at ML
Part 12: Memory Locations For Variables
Part 13: A First Look at Java
Part 14: Memory Management
Part 15: A Second Look at Java
Part 16: Object Orientation
Part 17: A Third Look at Java
Part 18: Parameters
Part 19: A First Look at Prolog
Part 20: A Second Look at Prolog
Part 21: Cost Models
Part 22: A Third Look at Prolog
Part 23: Formal Semantics
Part 24: History of PLs
Homeworks
Homework 1
Homework 2
Homework 3
Homework 4
Homework 5
Homework 5 Project Archive
Reference Component in C
This is a reference component in C. It demonstrates how one can use information hiding in C to build opaque types. It needs lots of work, but is a good start.
cog.h
cog.c
main.c
Makefile
Reference Component in C++
This is a reference component in C++. It demonstrates how one can use information hiding in C++ to increase the opacity of types. It needs lots of work, but is a good start.
cog.h
cog.cpp
main.cpp
Makefile