The MPRuntime API provides a set of opaque data types written in procedural C. The types are meant to make creating collections (such as lists and queues) as well as your own types much easier. The runtime presents a memory model that aids in preventing leakage, and takes after the paradigms of Apple’s CoreFoundation framework.
It should be noted that as of right now, the only opaque types implemented in the runtime include the runtime base (allocators, runtime instances), in addition to a strong array type and a number type for dealing with numbers. As more types become available, read their individual descriptions for usage.
Memory management with MPRuntime is done using reference counting. For every function that returns an object that has “Create” in the name, the object returned should be sent to MPRelease when you are done with the object. Similarly, if you want to keep an object around, you can call MPRetain to increase the retain count by one. You can read more about this at the following URL: http://en.wikipedia.org/wiki/Reference_counting.
To download the source code:
The MPRuntime API is protected under the GNU General Public License Version 3.
Documentation: Getting help
I began to put together some docs on how to use the MPRuntime. Each page consists of reference material and examples for a particular type (such as MPArray). I will keep adding functions and pages as time permits.
How does the MPRuntime perform?
Read the MPRuntime Performance Report to get the latest on how MPRuntime matches up against other frameworks such as Apple’s Foundation and CoreFoundation.

