probcomp/Gen.jl

`_fill_array!` not implemented for `VectorTraceChoiceMap`

femtomc opened this issue · 0 comments

It seems like this might prevent usage of algorithms like hmc with some of the combinators:

MethodError: no method matching _fill_array!(::Gen.VectorTraceChoiceMap{Gen.UnfoldType, Float64, var"##StaticIRTrace_kernel_nl7b#4224"}, ::Vector{Float64}, ::Int64)
Closest candidates are:
  _fill_array!(::Vector{T}, ::Vector{T}, ::Int64) where T at /home/adam/.julia/packages/Gen/DzPIu/src/choice_map.jl:188
  _fill_array!(::StaticChoiceMap, ::Vector{T}, ::Int64) where T at /home/adam/.julia/packages/Gen/DzPIu/src/choice_map.jl:474
  _fill_array!(::DynamicChoiceMap, ::Vector{T}, ::Int64) where T at /home/adam/.julia/packages/Gen/DzPIu/src/choice_map.jl:783
  ...

Stacktrace:
 [1] _fill_array!(choices::StaticChoiceMap{(), Tuple{}, (:chain_model,), Tuple{Gen.VectorTraceChoiceMap{Gen.UnfoldType, Float64, var"##StaticIRTrace_kernel_nl7b#4224"}}}, arr::Vector{Float64}, start_idx::Int64)
   @ Gen ~/.julia/packages/Gen/DzPIu/src/choice_map.jl:481
 [2] to_array(choices::StaticChoiceMap{(), Tuple{}, (:chain_model,), Tuple{Gen.VectorTraceChoiceMap{Gen.UnfoldType, Float64, var"##StaticIRTrace_kernel_nl7b#4224"}}}, #unused#::Type{Float64})
   @ Gen ~/.julia/packages/Gen/DzPIu/src/choice_map.jl:174
 [3] hmc(trace::var"##StaticIRTrace_nl9#4344", selection::DynamicSelection; L::Int64, eps::Float64, check::Bool, observations::EmptyChoiceMap)
   @ Gen ~/.julia/packages/Gen/DzPIu/src/inference/hmc.jl:36
 [4] hmc(trace::var"##StaticIRTrace_nl9#4344", selection::DynamicSelection)
   @ Gen ~/.julia/packages/Gen/DzPIu/src/inference/hmc.jl:28