Notes for Masterworks-papers
Goal: not to be restrictet to one DSL while not loosing the development tools.
Host and context specific language
polyglot = Mehrsprachig
Language Constructs for Contextoriented Programming
Goal: Avoid having to spread contextdependent behavior throughout a program
Layers for partial class and methods
each layer has a name
dynamically scoped layer activation obeys a stack-like discipline
Mirrors: Design Principles for Meta-level Facilities of Object-Oriented Programming Languages
Goal: Meta-level functionality should be implemented separately from base-level functionality, using objects known as mirrors
Design principles for meta-level facilities in object oriented programming languages:
- Encapsulation. Meta-level facilities must encapsulate their implementation.
- Stratification. Meta-level facilities must be separated from base-level functionality
- Ontological Correspondence. The ontology of metalevel facilities should correspond to the ontology of the language they manipulate.
Subjective Behavior: a General Dynamic Method Dispatch
- context awareness
- method dispatching
Benefit: Dynamic Interface Adaptatio, Dynamic Message Visibility and Dynamic Decision Learning:
The Paradigms of Programming
Goal: methodological abstraction
- structured programming
- dynamic programming
- recursive coroutines
"If the advancement of the general art of programming requires the continuing invention and elaboration of paradigms, advancement of the art of the individual programmer requires that he expand his repertory of paradigms."