There have been a lot of changes to Genesis made that are falling under the
umbrella of the new developmental cycle which will become Genesis 1.2.
They include so far:
* Major cleanups to use arg macros throughout ops/*.c (Bruce)
* Cleanups to use COLDC_OP (Bruce)
* Add pre-allocation to data/buffer.c (Bruce at Brad's prompting)
* Change binarydb/dbpack routines to read/write entire object at
once going through a cBuf. (Brad)
* Added performance metrics gathering code to the object, method
and name caches. Need a UI (Bruce)
* Macro cleanups. (Bruce, Brad)
* valid() works on frobs, testing their class (Bruce)
* Traceback handling is modified to not calculate line numbers
until traceback() is called. error_message() and error_data()
are added. This removes a good bit of the expense of a throw()
(Bruce, inspired by Colin)
* error_data() needs to be completed.
* Makefile fix, putting textdb.c into EVERYTHING_O (Jeff Dubrule)
* Buffers and strings allocate in units of 512 bytes. (Brad)
* caller_method() added. (Bruce)
* method cache invalidation optimizations (Bruce)
A list of upcoming projects, with a good deal of detail and prioritization
is in progress.
If there is interest in discussing any of these changes so far, or ideas for
future modifications, please feel free to discuss them here. I'll be
posting more frequent updates as things happen.
Once I complete the method cache changes, I'll post about the rationale
behind what was done and which cases were optimized.
- Bruce
|