Type check using an actual scope structure, with type signatures attached to primitive functions.