pure member functions
Steven Schveighoffer
schveiguy at yahoo.com
Tue Sep 21 06:27:20 PDT 2010
On Mon, 20 Sep 2010 16:26:44 -0400, Don <nospam at nospam.com> wrote:
> Steven Schveighoffer wrote:
>> I think it's ok for a function to be pure if all the arguments are
>> unshared, regardless of immutability. However, in order to cache the
>> return value, the reference itself must not be used as the key, but the
>> entire data of the reference. Even if it's immutable, wouldn't you not
>> want to cache the return values between two identical immutable objects?
>
> Possibly, but my guess is that it would take too long to check.
This is why I hate the idea of automatic caching -- how does the compiler
know that it would be too long? What if the operation takes 15 seconds,
and to do the memcmp takes 15 milliseconds?
-Steve
More information about the Digitalmars-d-learn
mailing list