基本实现small-step semantics