<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:10pt"><div style="" class="">Probably about 30% of my functions need some sort of memory management. I
 wanted to use the TG(Trivial Garbage) finalizers for automatic MM but 
they were twice as slow as my original functions. So I decided to use 3 
forms of MM in my library WITH-* macros, manual and finalizers. As for 
the finalizer part of my library, I wanted to call all my functions by 
the same name as well so I tried 2 things.  First I wrapped everything 
in conditionals so I could call by the same name but that was a bit 
slow...so I decided to create a clone of my library named "GC" that had 
all the same functions but they were finalized. so If, while in my 
original package, where I normally use with-* macros because they are 
quickest, I needed one, I could append a "gc::" before the function I 
wanted to use and bam!, a finalized version of the function I wanted to 
use, with the same name(save for the gc::) and as fast as possible. The 
only caveat is If I use one finalizer I have to append a "gc::" to thee 
front of every function that takes that function as input.  Once the 
branching for that function is over, I can do whatever I want with the 
rest of the functions in my code..Now I can tell you this is awesome and
 fun to use....but is there another better way</div><div style="" class=""><br style="" class=""></div></div></body></html>