diff --git a/pila.c b/pila.c index 85c6c1b..634b174 100644 --- a/pila.c +++ b/pila.c @@ -57,15 +57,18 @@ struct Word { struct RpnState { Value data_stack[DATA_STACK_LEN]; - Word *rts[RETURN_STACK_LEN]; - + Word *rts[RETURN_STACK_LEN]; /* "return" stack */ + /* stack, return pointers */ isize sp, rp; - bool err; + /* linked list, last added word is the first */ DictionaryEntry *dict; - bool compiling; + /* state flags XXX: use a bitfield? */ + bool err, compiling; + /* reader pointers */ char *rsp; /* reader start pointer */ char *rep; /* " end " */ + /* current word compilation state */ UserWord cur_comp; isize cur_comp_cap; Str cur_comp_name;