Fixpoint algorithm does not use 'fix'
sshine opened this issue · 1 comments
sshine commented
When translating [LabelledOpcode]
to [Opcode]
, such that a JUMP "foo"
becomes [PUSH x, JUMP ()]
, and so on (see readme for more information and examples), this fixpoint algorithm is used.
Here, fixpoint
calls step
and either terminates or calls fixpoint
again. So the levels of recursion have already been split into fixpoint
and step
, and the meat of the operation has been moved to align
. Since I sort reached my mental capacity writing this algorithm, it still looks a bit cluttered.
One thing that would simplify its implementation, I think, is the use of fix
.
Any other measure to reduce the complexity of this algorithm is equally welcome.
This issue is merely a friendly attempt to limit the search.