Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Friday, April 19, 2024

File: [Platon] / libco / TODO (download)

Revision 1.6, Fri Mar 14 14:29:09 2003 UTC (21 years, 1 month ago) by yenar

Changes since 1.5: +11 -1 lines

update [TODO]

MESSAGE TABLE CREATION [target: 0.2.1, done: 100%]

TABLE-DRIVEN DEFAULT MSG HANDLER [target: 0.2.2, done: 100%]
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 [target: 0.2.2, done: 100%]
MORE INTELLIGENT CO_METH_INI [target: 0.2.x, done: 0%]
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 also a
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.

AUTOMATIC CONSTRUCTOR [target: 0.2.3, done: 20%]
Our copp should generate constructor for each object. The data initialization
should take place in "bless" method - in a way, that allows to re-send this
message to object and cause it to reset itself (e.g. after cloning).

CLONE [target: 0.2.4, done: 15%]
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: 50%]
Create consistent framework built on libltdl for loading modules. Each module
shalt become object in loading process and export its interface this way.

AUTOMATIC PYTHON BINDINGS [target: 0.2.6, done: 30%]
All co objects should be import'able and instantiable from python. Also, their
methods should be accessible through default pythonish interface (eg a.test
("blee") should send message "test" to object "a" with string argument "blee").

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%]

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top