meeting -*- Outline -*- * goals and process for designing a language ("Simple") ** goals --------------------------------------------------------- GOALS simplicity: especially ease parsing the input and of implementation ==> regularity generality: since it aids simplicity ability to manipulate programs as data: to ease construction of interpreters and compilers to allow "meta programming" --------------------------------------------------------- want to be able to manipulate programs and data easily (meta-programming, genetic programming) ** process we will operate by consensus if necessary we will vote, or I will select if there's an arbitrary choice to be made ** parts of a language --------------------------------------------------------- PARTS OF A LANGUAGE means of computiation = primitive expressions (data) means of combination means of abstraction --------------------------------------------------------- ... procedure calls, sequencing, loops, container data structures ... procedures, abstract data types, macros