Bowing to popular demand. The release notes are below. For instructions on using SourceForge's CVS servers for Topaz, see: <URL:https://sourceforge.net/cvs/?group_id=1020> Share & Enjoy! PS: We could use a little more sophisticated Makefile system.... -------------------------------------------------------------------------- Changes in topaz 0.11: * Organize code into subdirectories: mem Memory management etc. val Value and derivations op Opcodes etc. int Interpreter etc. tools scripts * Rename all FooPtr -> Foo_p, ConstFooPtr -> const_Foo_p. * Create Counted_p_ref<> by analogy with auto_ptr_ref<>, designed for return-by-value. Its contained pointer is always stolen. The intent is to reduce ref thrashing. * Likewise Buffer_ref vs. Buffer. * New stuff in mem: HashMisc: misc support for hash functions HashTable: low-level hash table support HashSet: generic container based on HashTable<> * Defined/undefined isn't really a universal concept, so it's no longer part of the Value interface. * Rationalize array/hash interface. All methods must be specific to arrays or hashes; otherwise, we can't tell if a reference is of appropriate type or not. * Hashes no longer contain default iterators. This change will will require a bit of language support, but Larry sez it'll probably work, and that's good enough for me. * FatHash is now implemented with our own HashSet<> template instead of the more general (and higher-overhead) map<>. * New class: Stash, a specialized container of Globs that acts like a Hash when it has to. (Also: GlobProxyScalar.) * Interpreter's methods are now mostly friends, for convenience. * Code class is now general for all functions, user-defined or not. (Otherwise, you can't redefine a user sub with an XSUB or vice versa.) All user-sub-specific intelligence is in UserCodeBody, derived from the new abstract base Code::Body. -------------------------------------------------------------------------- -- Chip Salzenberg - a.k.a. - <chip@valinux.com> "I wanted to play hopscotch with the impenetrable mystery of existence, but he stepped in a wormhole and had to go in early." // MST3K