CS 342 Lecture -*- Outline -*- * Control structures and structured programming (omitted in Spring 1990) ** case and the labeling principle *** Labeling principle: for long lists, associate labels with each item and allow users to specify labeled items in any order. *** Implementation: branch table (jump indirect based on index) usual method, linear ** with used with records --------- with instr do case s of {instead of instr.s} case op of {instead of instr.op} ... end --------- allows user to do common subexpression elimination (preservation of information principle) problem: meaning when expression changes in body of with?