Welcome to CS 440 for Spring 2009!
At the end of this course, you should be able to...
- Understand major classes of programming languages: techniques, features,
and styles.
- Know how to use boxed and unboxed variables
- Be able to use higher order functions.
- How to specify formally the meaning of a language --- to people and to the computer.
- Use Transition, Typing, and Denotational Semantics to define a language construct.
- Be able to specify the language of regular expressions.
- Determine if a grammar is LL, and write a parser for it using recursive descent.
- Determine if a grammar is LR, and write a parser for it using a parser generator.
- Describe the algorithm for both LL and LR parser generation.
- Three Powerful Ideas:
- Recursion
- Know how to use both tail recursion and standard recursion.
- Know how to use higher order functions to eliminate recursion.
- Abstraction
- Know how to create user-defined types.
- Know how to use functions to model integers.
- Know how to use trees to model language constructs.
- Transformation
- Know how to interpret a language.
- Know how to use unification.
- Recursion
- How to choose a language.
- How to implement a language.