Forums & Lists
MMXX-dev Mailing List
Login via SSL
New User via SSL
Welcome to MMXX's site at SourceForge
MMXX (pronounced "2020" as per roman numerals, or "mix", depending
on personal preference) stands for Modules and Metaclasses ++. Accordingly, MMXX is two things:
- An antidote for C++'s Fragile Base Class Problem. It allows C++
applications to be arbitrarily divided into binary code fragments
(such as a main executable, shared libraries and/or plug-in code modules) with single-class granularity. Each component can then be substantially
revised while maintaining binary backward compatibility with the
components that were built prior to the revision, within limits
determined by the particular design and revision strategies employed.
- A "metadata/metacode gateway" (a.k.a. an "Interface Repository",
a.k.a. "Super RTTI") that makes many C++ compile-time constructs
visible a runtime. In particular, it makes class properties queryable
and methods programmatically invocable. This is especially useful
for gateway-type functions, whereby a portion of the program's
interfaces are to be exposed to the outside.
The current release (1.0d) is a preliminary version of MMXX, intended
primarily for developers of MMXX itself. If you're interested
in using MMXX in your own software, please consider contributing to the project at this stage. Otherwise, please note the following:
- Most of the architecture's internals are not yet properly hidden
from the user.
- Most concepts, data structures, APIs and programming models are
still in flux. You might end up having to re-learn things, and/or
having to revise your MMXX-enabled code later.
- The documentation is still incomplete, and is likely insufficient
for you to integrate MMXX without first learning about its internals.