working type system and primitives