withDevelopers
withDevelopers withDevelopers withDevelopers

Key Properties for Open Implementations

The principled separation between base- and meta-interfaces is the primary principle of the reflective modules we propose for open implementations. But there is a great deal more than this to properly opening implementations in this way.

In some sense, traditional black-box abstractions have always had a crude meta-interface --- if client programmers did not like mapping decisions made inside a module implementation, they could write a new one entirely from scratch!

To capture the key properties of a well-designed open implementation, the following additional concepts are important:

Return to the Open Implementation Site Guide
Return to the Open Implementation Home Page