Readme release 1.2.1a3 and A4  
 
PLEASE NOTE: THIS IS AN EXPERIMENTAL ALPHA RELEASE

It should not be used for productive work, or only with care and enough backups. It is worthwhile to save often (not only "save", but also "save as").

I would very much appreciate if you could try this release on your machine and tell me about the results.

What's new in this release

The features of this release 1.2.1a3 and a4 should exactly correspond to release 1.2. In ideal case you shouldn't experience any differences.
The difference between a3 and a4 is, that a3 uses multi-threading and a4 only single-threading (which is less likely to crash in theory).
As announced in our roadmap, I have changed the whole memory management concept of CARA. This is a critical process which started around christmas and is expected to continue for some other weeks. Refactoring the memory management strategy of such a large source tree like CARA and NAF is a complex matter. Why should I do this? We want to give user scripts access to all NAF components in future to ease the implementation of new custom scopes. The integration of Lua with the visual hierarchy and notification chains implemented in C++ demands for a very flexible component concept. This is hard to realize using traditional C++ memory management strategies (like reference counting), because they restrict the referencing of objects too much (i.e. only hierarchical structures can be properly supported by reference counting). With the new strategy, CARA delegates memory management of the NAF framework to a garbage collector. This increases the average memory consumtion a bit, but allows for arbitrary graph structures having either Lua or C++ objects as nodes. Working with a garbage collector has an essential influence on the resulting software architecture. Because of this I had to rework parts of the architecture to efficiently coexist with the collector (avoiding memory leaks and premature deletes of objects). The current release seems to run quite stable now, but I'm aware that users are much more imaginative in finding bugs (i.e. hard crashes). You can thus support this migration by trying to use this releases and reporting the problems to our issue tracker. I would also like to hear of you, if you don't find any problems (even if this is quite unlikely).

Thanks for your support.

Rochus
 

 
   
   contact   Last changed on February 13, 2006