Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory (Computer Science Series)