I've uploaded the second WIP of AngelScript 2.0.0. Now you can try out the new object handles, that will allow you to work heavy objects through smart pointers. For the object handles to work for an object it is necessary to register a couple of new behaviors, namely AddRef and Release, which will take care of the reference counting necessary for the memory management. Currently the object handles doesn't work with arrays, which is something that I'm working on for WIP 3. Not much else is missing before the final release of AS 2.0.0, I just need to fix the assembler VM, and do a few more clean-ups. I also discovered another security risk, which is with class methods. If a class method do something that make its class be deallocated, the class method may accidently access memory it is no longer the owner of. For objects that have the AddRef and Release behaviours registered this is easy to protect, just have the VM add a reference to the object before calling the method and release it again upon exit, but for objects that don't have these behaviours it is not as easy. I don't want to force applications to register the AddRef/Release behaviours for all objects, so I will instead make it a responsibility of the application to make sure that a class method will never accidentaly delete the methods class. Fortunately this situation isn't very common so that should be a big problem, though application writer needs to be aware of the possibility. Regards, Andreas Jönsson Author of AngelScript AngelScript - AngelCode Scripting Library http://www.angelcode.com/angelscript/ http://www.angelcode.com/forums/