COMP 50 Syllabus: Experience levels

Level 0: Tyro (sums of products)

Tyros learn simple computation on data descriptions that can be written in a way that defines each data class completely before any other description uses that class.

Level 1: Beginning student (lists and trees)

Beginning students learn to work with data descriptions that refer to themselves and so cannot be completely defined before they are used. The most common such data are lists and trees.

Level 2: Intermediate student (abstraction)

Intermediate students learn a key technique of computer science: abstraction.

Level 3: Recursive reasoner

Recursive reasoners have the insight to find a recursive decomposition even when the decomposition is not there in the data. And they can write recursive algorithms that remember past actions.

Level 4: Cost container (costs)

Cost containers can reason about costs.

Level 5: Memory mutator (mutation)

Memory mutators cut costs by using mutable state. We may replace this level with a project or something else.