After a brief introduction to programming concepts, this unit focuses on the importance of abstraction and modularity for managing complexity. General principles are developed in the context of state machines, with tangible applications in controlling the behaviors of a mobile robot.
Topics | procedures, data structures, objects, state machines |
Lab Exercises | implementing robot controllers as state machines |
Abstraction and Modularity |
Combinators Cascade: make new state machine (SM) by cascading two SMs Parallel: make new SM by running two SMs in parallel Select: combine two inputs to get one output |
Theme | PCAP (Primitives, Combination, Abstraction, Patterns) |