changes to syntax inspired by the work on semantics