I. motivation for studying domain specific languages A. programming is too hard B. What makes programming hard? 1. requires special-purpose training 2. not oriented towards end-users a. design b. tools II. approaches to solving these problems A. domain specific languages (DSLs) B. reuse, as in object-oriented frameworks C. executable specifications or search D. other issues E. syllabus based on this