On Friday, September 23, 2016 at 9:08:29 AM UTC-4, Ed Scheinerman wrote:
>
> Hello,
>
> I use memoization frequently and have run into two problems with the move 
> to Julia 0.5.0. 
>
> The first is not too serious and I hope can be fixed readily.  The first 
> time I memoize a function, a warning is generated like this:
>

This kind of warning is fairly innocuous and happens when we upgrade Julia 
versions, due to language changes; it takes a while for packages to catch 
up with a new release.

In this case, it looks like it was already fixed 
(https://github.com/simonster/Memoize.jl/pull/7), but maybe a new version 
needs to be tagged.

 

> More significantly, if I want multiple dispatch on a function name, the 
> second instance creates a problem and the definition is rejected. Here I 
> define a factorial function that always returns a BigInt. The first 
> function definition succeeds but the second one fails:
>

I would file an issue with Memoize.jl; I'm not sure why the package is 
limited to memoizing only a single method definition, but this seems like 
it would need to be fixed upstream.

(Note, by the way, that you could define @memoize Factorial(n::Integer) = 
factorial(big(n)), and it will be far more efficient because it will call 
an optimized GMP factorial function.)

Reply via email to