zippy/ceptr

refactor _p_step and reduce_sys_proc

Opened this issue · 0 comments

zippy commented

Currently there are a bunch of weird interaction between reduce_sys_proc and it caller _p_step. A bunch of the instructions are not strictly reductions (like COND, ITERATE, CONVERSE, INITIATE_PROTOCOL, etc) in that they manipulate the context. Thus we have a bunch of checks before the reduce_sys_proc call in which we use the pattern of allocating state data for the call (for different phases like in COND or ITERATE) and/or you see the meta-error: redoReduction.

This should all be rationalized and re-thought out into a clearer pattern. Including: errors thrown by instructions having more state information.