Andrea Quadri

Notes for Masterworks-papers


Language Boxes

Goal: not to be restrictet to one DSL while not loosing the development tools.

Host and context specific language

polyglot = Mehrsprachig


Dynamic Adaptation

Language Constructs for Contextoriented Programming

Goal: Avoid having to spread contextdependent behavior throughout a program

Layers for partial class and methods

root layer

each layer has a name

dynamically scoped layer activation obeys a stack-like discipline


Meta-Objects

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:

  1. Encapsulation. Meta-level facilities must encapsulate their implementation.
  2. Stratification. Meta-level facilities must be separated from base-level functionality
  3. Ontological Correspondence. The ontology of metalevel facilities should correspond to the ontology of the language they manipulate.

Subjectivity

Subjective Behavior: a General Dynamic Method Dispatch

  • Subjectivity
  • multi-methods
  • context awareness
  • method dispatching
  • reflection.

Benefit: Dynamic Interface Adaptatio, Dynamic Message Visibility and Dynamic Decision Learning:



Other literature

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."

Last changed by admin on 21 April 2009