Purity (D2 standard libraries / object.d)
Walter Bright
newshound1 at digitalmars.com
Sat Jan 10 12:43:10 PST 2009
dsimcha wrote:
> == Quote from Walter Bright (newshound1 at digitalmars.com)'s article
>> If the compiler does general memoization on pure functions, all it has
>> to do is use the bits of the arguments passed on the stack to the
>> function as an index into an associative array of the return values.
>> The problem is identifying if this would be faster than recomputing the
>> return value.
>
> Wouldn't this also cause threading issues? The obvious solution would be to use
> TLS, but his requires duplicating the cache across threads. Also, using AAs
> internally like this would lead to very deeply hidden memory allocations, and
> therefore possibly more frequent GC, etc.
Immutable data doesn't have threading issues, which is the beauty of them.
More information about the Digitalmars-d
mailing list