Thanks to Don Brutzman and Roy Walmsley for their unified object model, Michael Turner for an introduction to NSM.<div dir="auto"><br></div><div dir="auto">1. Contains abstractions common between different languages.  This is a from the Natural Semantic Metalanguage, perhaps. Or perhaps upper ontology.<div dir="auto"><br></div><div dir="auto">2. Contains concrete parts inherited from 1. Things like loops, conditions, syntax, appear here because they need to be concrete before they can be instantiated.   This is for concrete semantics.</div><div dir="auto"><br></div><div dir="auto">3. Language syntactic sugar—mappings from semantics to a readable, editable, manipulatable language.  For parsing and generating documents, messages and interfaces.</div><div dir="auto"><br></div><div dir="auto">4. Abstract templates, or a way to parse or generate documents, messages and interfaces. Grammars.</div><div dir="auto"><br></div><div dir="auto">5. Concrete templates. Message snippets and parameters </div><div dir="auto"><br></div><div dir="auto">6. Executable artifact combining templates with documents.  Prepared speech acts.</div><div dir="auto"><br></div><div dir="auto">7. Process.  The act of communicating.</div><div dir="auto"><br></div><div dir="auto">So, abstract and concrete semantics; abstract and concrete syntax; abstract and concrete templates; and prepared and live performance.</div><div dir="auto"><br></div><div dir="auto">Anything else? Statistics?</div><div dir="auto"><br></div><div dir="auto">John</div></div>