= Langbinding = In thinking about how to design, and implement the various aspect of Langbinding I kept going back to some of the same concepts that make up the Common Lisp MOP class system. The key goal for Langbinding is to describe types, and interfaces for those types, as data structures. Unlike the Lisp MOP the interfaces can't be dynamic in the same way in C/C++, but at minimum we can create ad hoc descriptions but only to static code. The goal being to create a bridge between dynamic languages and C++. The basic components of such a bridge are: * A description the interfaces and data, the ''binding''. * An instance of the ''binding'' for a particular language. Langbinding is split into a set of components that work together to implement those two components: * [wiki:Langbinding/Core Core] -- Basic functionality to manage the binding information. * [wiki:Langbinding/MOB Meta-Object Binding] -- The meta-description and instances of the bindings. * [wiki:Langbinding/CPPBinding C++ Language Binding] -- The C++ description of the bindings. Development: * [wiki:Langbinding/ExistingFunctionality Existing Functionality] * [wiki:Langbinding/Questions Questions] * [wiki:Langbinding/Tasks Task List] * [wiki:Langbinding/Notes References, resources, notes, etc.]