Open implementation
In computing, open implementation platforms are systems where the implementation is accessible.  Open implementation allows developers of a program to alter pieces of the underlying software to fit their specific needs.  With this technique it is far easier to write general tools, though it makes the programs themselves more complex to design and use.

There are also open language implementations, which make aspects of the language implementation accessible to application programmers.

Open implementation is not to be confused with open source, which allows users to change implementation source code, rather than using existing application programming interfaces.

See also 

 Aspect-oriented programming for a successor concept in research
 Metaobject protocol for the primary implementation means
 Software architecture for organization of software in general

External links
Links pertaining to open implementation

Free software culture and documents