You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I need to do a pass over the update algorithm to make sure that I understand how non MGF calls (in particular, calls to :abstract) are handled!
Currently, I have modified lookup_or_generate_during_world_update! by adding
if no_val &&!is_mgf_call(call)
@assertaddr(call) == _get_abstract_addr
generate_value!(world, call, EmptyChoiceMap())
returnget_val(world, call)
end
to silence a bug which was occurring when processing a new :abstract call in the GMM example.
I should return to this and understand whether this is the right solution (and if so convince myself that it won't have unintended side effects), or find a better one.
The text was updated successfully, but these errors were encountered:
In the end, I changed the code snippet I mentioned above to
if no_val ||!is_new_lookup ||!already_updated(world, call)
update_or_generate!(world, call)
ifis_mgf_call(call)
update_or_generate!(world, call)
else# I have this assertion since I have in mind that this is the only place# where this could happen, but am not 100% sure, and I want to be alerted if# this turns out to be false.@assert no_val &&addr(call) == _get_abstract_addr
generate_value!(world, call, EmptyChoiceMap())
endend
I need to do a pass over the update algorithm to make sure that I understand how non MGF calls (in particular, calls to
:abstract
) are handled!Currently, I have modified
lookup_or_generate_during_world_update!
by addingto silence a bug which was occurring when processing a new
:abstract
call in the GMM example.I should return to this and understand whether this is the right solution (and if so convince myself that it won't have unintended side effects), or find a better one.
The text was updated successfully, but these errors were encountered: