MESSAGE TABLE CREATION [target: 0.2.1, done: 80%] TABLE-DRIVEN DEFAULT MSG HANDLER [target: 0.2.2, done: 60%] At least for now it should use simple cycle comparing received message id with method table items one by one. When found, method shalt be executed, if not, default action taken (i.e. "default" method invoked, which then could take care of implicit delegation et cetera). MORE INTELLIGENT CO_ATTR/CO_METH_INI [target: 0.2.x, done: 30%] These should not need explicit object name, just get it from last CO_OBJECT or CO_METH respectively. The CO_METH problem is much harder to solve and bit more annoying. REFLEXION [target: 0.2.3, done: 40%] A method should be available for each object that will provide outside world with informations from method table of object. By means of copp it should be incorporated in message table of every prototype object. CLONE [target: 0.2.4, done: 0%] This should replace current constructor approach. There will be constructor, but only as a prototype creation mechanizm, and it will be autogenerated by copp. It will set up message-handler table for the object and so on. But more types of cloning should be available: shallow copy, deep copy, stand-alone, etc. This will then affect way objects are coupled - as with default, method tables are shared - and thus adding (or removing) method at runtime will affect all such objects. Stand-alone cloning will create new method table and thus new object group. PLUGIN ARCHITECTURE [target: 0.2.5, done: 20%] Create consistent framework built on libltdl for loading modules. Each module shalt become object in loading process and export its interface this way. SECURITY [target: 0.3.1, done: 0%] Fix buffer overflows and alike. CO_MAP ASSOCIATIVE ARRAY [target 0.3.2, done: 0%] CO_BTREE BINARY TREE IMPL [target: 0.3.5, done: 0%] THREAD SUPPORT [target: 0.4.x, done: 0%]