JuliaMath / Primes.jl

Prime numbers in Julia
Other
99 stars 32 forks source link

print(factor(24)) is not executable #132

Open jmichel7 opened 1 year ago

jmichel7 commented 1 year ago

playing around with Factorizations I noticed a bug

julia> print(factor(24))
Primes.Factorization(2 => 3, 3 => 1)
julia> Primes.Factorization(2 => 3, 3 => 1)
ERROR: MethodError: no method matching Primes.Factorization(::Pair{Int64, Int64}, ::Pair{Int64, Int64})
Stacktrace:
 [1] top-level scope
   @ REPL[3]:1

you should either print factor(24) as Primes.Factorization(Dict(2 => 3, 3 => 1)) or add a method

Primes.Factorization(l::Pair{T,Int}...) where T=Primes.Factorization(Dict(l))

so that one can round-trip a Factorization