Com S 641 meeting -*- Outline -*- * the abstraction principle (Ch. 2) core has no names, only values study how to introduce names into a language ------------------------------------------ THE ABSTRACTION PRINCIPLE (2) "The phrases of any semantically meaningful syntactic class may be What Named Entity location numeral expression command declaration type structure ------------------------------------------ ... named" due to Landin, Strachey, Reynolds, Tennent ... alias constant function procedure module class (or type) we'll study all of these also variables, which are like a combination of allocation and an alias declaration ------------------------------------------ TERMINOLOGY define pi = 3.14159 define I = V pi I invoke I call I ------------------------------------------ Q: What are the parts of these definitions? name (I), body (V) binding (association I = V) also: the abstractions (the value of 3.14159 and V) The uses are called *invocations* ------------------------------------------ SYNTACTIC DOMAINS I \in Identifier D \in Declaration ------------------------------------------ These are typical