package bap-std
Biri evaluates terms in the context of a whole program (since terms may contain calls and jumps). Biri also tracks for current position inside block, the block and preceding block.
Note, that even if some properties do not provide setters, they can still change during the evaluation, as other implementations may override them and provide different behavior.
inherit Expi.context
method trace : tid list
list of term that were already executed (may be long)
method enter_term : tid -> 's
Should be called when a new term is entered. This implementation will update the trace list with the passed argument.
method set_next : tid option -> 's
set_next tid
set the identifier of the next term.
method next : tid option
The next
term identifier is the identifier of a term, that should be executed next. If next
is None
then, the interpretation will stop. The identifier must belong to a term, that is in the program
and is either an identifier of a block or a subroutine.