Miranda: a non-strict functional language with polymorphic types
Proc. of a conference on Functional programming languages and computer architecture
Denotational semantics: a methodology for language development
Denotational semantics: a methodology for language development
A generalization of Dijkstra's calculus
ACM Transactions on Programming Languages and Systems (TOPLAS)
Non-determinism in functional languages
The Computer Journal - Special issue on formal methods: part 1
Handbook of logic in computer science (vol. 3)
Lisp and Symbolic Computation - Special issue on state in programming languages (part I)
Heterogeneous relation algebra
Relational methods in computer science
Relational semantics of functional programs
Relational methods in computer science
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
The algebra of stream processing functions
Theoretical Computer Science
Predicate transformer semantics of a higher-order imperative language with record subtyping
Science of Computer Programming
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
A Discipline of Programming
Functional Programming and Parallel Graph Rewriting
Functional Programming and Parallel Graph Rewriting
Soundness of data refinement for a higher-order imperative language
Theoretical Computer Science
Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
Polynomial Relators (Extended Abstract)
AMAST '91 Proceedings of the Second International Conference on Methodology and Software Technology: Algebraic Methodology and Software Technology
Theories of Programming: Top-Down and Bottom-Up and Meeting in the Middle
FM '99 Proceedings of the Wold Congress on Formal Methods in the Development of Computing Systems-Volume I - Volume I
Semantics of Nondeterministic and Noncontinuous Constructs
Program Construction, International Summer Schoo
A categorical model for higher order imperative programming
Mathematical Structures in Computer Science
Concepts, Techniques, and Models of Computer Programming
Concepts, Techniques, and Models of Computer Programming
The genuine sieve of eratosthenes
Journal of Functional Programming
RelMiCS'08/AKA'08 Proceedings of the 10th international conference on Relational and kleene algebra methods in computer science, and 5th international conference on Applications of kleene algebra
Non-termination in unifying theories of programming
RelMiCS'05 Proceedings of the 8th international conference on Relational Methods in Computer Science, Proceedings of the 3rd international conference on Applications of Kleene Algebra
Recasting hoare and he's unifying theory of programs in the context of general correctness
IW-FM'01 Proceedings of the 5th Irish conference on Formal Methods
Partial, total and general correctness
MPC'10 Proceedings of the 10th international conference on Mathematics of program construction
Extended designs algebraically
Science of Computer Programming
Hi-index | 0.00 |
We integrate non-strict computations into the Unifying Theories of Programming. After showing that this is not possible with designs, we develop a new relational model representing undefinedness independently of non-termination. The relations satisfy additional healthiness conditions that model dependence in computations in an elegant algebraic form using partial orders. Programs can be executed according to the principle of lazy evaluation, otherwise known from functional programming languages. We extend the theory to support infinite data structures and give examples to show their use in programs.