We have reached 39% overall progress on Loradon 3.0.
Loradon 3.0 Progress Page
From the Programmer
Written by Invisible
About the middle of last week, I redesigned the memory management system. jpetrie showed me a feature of classes that I did not know existed; the copy constructor, which opened up the possibility to track an object as it is passed around. He also gave me the idea to create a safe pointer class, which is what I ended up doing for about 3 days.
The safe pointer class is a template class that acts like a pointer. The difference is that it keeps track of how many references have been made to the allocated memory, and only deletes it once there are no more references. This is similar to my old system, but references are now added automatically whenever a "pointer" is copied by being passed to a function, returned by a function, or assigned to another pointer. I had been trying to find a way to do this before, and the copy constructor was the bit of information I was missing.
I plan to merge the "safe pointer" system and my previous "allocated memory manager" system. The safe pointer will register a new allocation with the memory manager, and will also notify the memory manager when a new reference to that memory has been added or removed. The memory manager will keep track of references (their ID and pointer) and handle deletion of a memory block once there are no more references to it. Having a central location where all blocks of memory are tracked will allow debug reports to be generated if need be.
Latest Dev Demo Report
Written by Invisible
No dev demo report this time either. We are expecting the dev demo reports to return next month though.