Introduction LCF (Icqic for Caqmtable Functions) is a prcof generating system mnsisting of an interactive programing language MG (MetaLmguage) for mnducting prcofs in PPA (Polynmrphic Predicate A-calculus) , a deductive calculus suitable for the formalisation of reasoning almut recursively defined functions, in particular about the syntax, semantics and… (More)
This paper describes a method of giving the mathematical semantics of programming languages which include the most general form of jumps.
This paper demonstrates the utility of typed shared data abstractions as an effective high-level means of structuring and coordinating parallel programs. Access to data shared by concurrent processes is expressed through operations of shared abstract data types (SADTs). SADTs abstract low-level concerns of communication and synchronization. The exposition… (More)
We have developed a theory of sharing which captures the behaviour of programs with respect to shared data into the framework of process algebra. The core theory can describe programs performing read and write access to unitary pieces of shared data. Extensions allow shared data to be decomposed and atomic copies to be made, reflecting the common operations… (More)
Preface This course aims to teach both the theory and practice of functional programming. The theory consists of the-calculus and the practice will be illustrated using the programming language Standard ML. The eld of Functional Programming splits into those who preferìazy' languages like Haskell and those who prefer`strict' languages like ML. The practical… (More)