Home

This is the homepage for CS 136 (Spring 2015).

CS 136 builds
on the techniques and patterns that you learned in CS 135. It
introduces an imperative language (C) in parallel with continued
study of a functional language (Scheme/Racket), and discusses issues
surrounding the effective use of programming languages in
"real-world" environments.

The primary focus of the course is
the design, analysis and implementation of fundamental
algorithms and data structures. This necessitates the use of
computational models for both Scheme and C that more closely
resemble what happens in actual implementations. The goal of CS 136
is to give students the tools and concepts necessary to solve
computational problems in a robust, efficient and verifiable manner.

You can find the handbook description of the course here
and a high-level description of how CS 136 fits into our
curriculum here.
Copies of the slides will be available after the
lectures on the handouts
page.