CS 342 Lecture -*- Outline -*- ** CLU advert: language used to study data abstraction single most important idea in programming (aside from procedures) why? because it allows programmers to think abstractly about data structures because it mitigates the effect of most common changes to programs (change of data structure) we're not covering Ada explicitly, but Ada is a lot like CLU but may find it helpful to read about Ada anyway *** History and Goals ------------------------ 1968 Algol 68 (lots of coercions, negative influence) (1970s were the golden age of language design, "structured prog") 1971 Pascal 1971 Parnas begins promoting notion of information hiding (modularity) 1973 Barbara Liskov's group at MIT begins design of CLU 1975 initial verision of CLU implemented no exception handling 1978 essentially final version of CLU ------------------------ "The goal was to work out data abstraction precisely." - B. Liskov i.e., support programming method based on data abstraction also support other ideas about programming: no global variables