I think a better avenue would be to implement some sort of strong-pure memoization system. Then all you have to do is make an immutable pure member, and the compiler will take care of the rest for you.I think this only works for classes, however, since there is no place to put hidden memoization members...
...in structs. -Steve