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
The UIP suggests that the interpreter should produce a deterministic error (bail: exit) when the %loop hint triggers. While this does not violate the Nock spec, @joemfb, @frodwith, and I all had the same gut feeling that it would be more conservative to fail nondeterministically (bail:fail), since that would preserve the existing behavior, i.e. an infinite loop could only ever result in a nondeterministic error in any interpreter that doesn't support the %loop hint.
@eamsden Do you have a specific use case in mind that would benefit from this error being catchable? If not, we are leaning toward making this a bail:fail.
The text was updated successfully, but these errors were encountered:
Yes the case is precisely where you would otherwise keep a set of some sort in your subject to track if you are recurring on some already seen part of . The goal of the hint isn't just to turn otherwise-infinitely-looping nock into a crash, but to allow the removal of explicit checks in hoon while retaining the ability to crash deterministically instead of infinite-looping.
@joemfb there is state in the Hoon compiler like this, right?
The UIP suggests that the interpreter should produce a deterministic error (bail: exit) when the
%loop
hint triggers. While this does not violate the Nock spec, @joemfb, @frodwith, and I all had the same gut feeling that it would be more conservative to fail nondeterministically (bail:fail), since that would preserve the existing behavior, i.e. an infinite loop could only ever result in a nondeterministic error in any interpreter that doesn't support the%loop
hint.@eamsden Do you have a specific use case in mind that would benefit from this error being catchable? If not, we are leaning toward making this a bail:fail.
The text was updated successfully, but these errors were encountered: