CS 641 Lecture -*- Outline -*- * style (or model) vs. problems (what's the match?) ** styles vs. kinds of problems that work well ------------------------------------------ WHAT KINDS OF PROBLEMS WORK WELL IN... Declarative style? Declarative Concurrent style? Message Passing style? Explicit State (ADT, OO) style? ------------------------------------------ ... declarative style: infinite data structures polymorphism tool building semantics web apps functional transformations ... declarative concurrent style ... OO style conceptual modeling simulation changing domains (planning for change) prototyping ** What kinds of things are not easily done in a given style? ------------------------------------------ WHAT IS NOT EASILY DONE IN ... Declarative style? Declarative Concurrent style? Message Passing style? Explicit State (ADT, OO) style? ------------------------------------------ ... declarative sharing of time-varying data