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.)
