added pop_as_type macro
distributed machine stack over type-specific sub-stacks