CS162 Programming Languages
- Instructor: Vebjorn Ljosa, Trailer 936, room 103
Office hours: T 14:00--16:00 - Teaching assistant:
Aram Melkoumian
Office hours: TR 11:00--12:30 in CSIL - Lectures: TR 12:30--13:45, Bldg. 387, room 103
(between Psychology and parking lot 3) - Discussions: F 09:00/09:50, Phelps Hall, room 1401
- Midterm exam: T 2007-02-13, Bldg. 387, room 103
- Final exam: T 2007-03-20, 12:00--15:00, Bldg. 387, room 103
Preliminary list of topics
- Syntax
- Rules that define valid programs and let the compiler infer the structure of a program.
- Semantics
- Formal and informal ways of describing the meaning of programming language constructs?
- Attributes, binding, scope, and types
- What's in a name?
- Argument passing
- Call by reference, value (copy in, copy out), and name. This is where formal semantics come in handy.
- Lambda calculus
- A different way to think about computation, and the basis of functional programming.
- Functional programming
- Higher-order functions, eager vs. lazy evaluation, and other goodies.
- Stack-based languages
- Type systems
- Statically typed, dynamically typed, and duck typed, manifest typed, and untyped languages.
- Generic functions
- Methods that specialize on more than one argument.
- Polymorphism, pattern matching, and inheritance
- Concurrency (maybe)
- Exception handling
- There's more to it than try and catch.
- Logic programming
Current News
- The grades have been posted. Enjoy spring break!