Abstract. In functional languages, the shape of the external world af-fects both our understanding of I/O and how we would wish to have I/O expressed. This paper takes the first tentative steps at examining the consequences of using an explicit model of the external world-state when reasoning (using tool-support) about the behaviour of lazy func-tional programs. We construct a file-system model and develop a monadic language which lets us structure I/O. Two proofs are then performed re-garding the observable effect of real-world functional I/O, and it is shown how properties of the file-system lend themselves naturally to the mod-elling of concurrent behaviour on a single, global state. All proofs in this paper were machine-verified using t...
In this paper we present a model of interactive programs in a purely functional style. We exploit la...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
This article demonstrates how a powerful and expressive abstraction from concurrency theory plays a ...
Contains fulltext : 60288.pdf (preprint version ) (Open Access)In functional langu...
Functional programming languages have traditionally lacked complete, flexible, and yet referentially...
This dissertation presents a pure functional language called Curio. This language is unusual in poss...
We recently proposed an approach for the specification and modular formal verification of the intera...
Certain classes of applications are naturally described as a network of cooperating components, wher...
The mechanism of Landin-style stream input/output (I/O) makes it possible to write functional progra...
Abstract. We propose a form of input and output for functional languages that is in a sense orthogon...
We investigate the extension of non-strict functional languages like Haskell or Clean by a non-deter...
This paper explores the use monads to structure functional programs. No prior knowledge of monads or...
We investigate the extension of non-strict functional languages like Haskell or Clean by a non-deter...
We describe a verification framework for I/O automata in Isabelle. It includes a temporal logic, pro...
One way of verifying systems whose components interact by exchanging messages, such as distributed s...
In this paper we present a model of interactive programs in a purely functional style. We exploit la...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
This article demonstrates how a powerful and expressive abstraction from concurrency theory plays a ...
Contains fulltext : 60288.pdf (preprint version ) (Open Access)In functional langu...
Functional programming languages have traditionally lacked complete, flexible, and yet referentially...
This dissertation presents a pure functional language called Curio. This language is unusual in poss...
We recently proposed an approach for the specification and modular formal verification of the intera...
Certain classes of applications are naturally described as a network of cooperating components, wher...
The mechanism of Landin-style stream input/output (I/O) makes it possible to write functional progra...
Abstract. We propose a form of input and output for functional languages that is in a sense orthogon...
We investigate the extension of non-strict functional languages like Haskell or Clean by a non-deter...
This paper explores the use monads to structure functional programs. No prior knowledge of monads or...
We investigate the extension of non-strict functional languages like Haskell or Clean by a non-deter...
We describe a verification framework for I/O automata in Isabelle. It includes a temporal logic, pro...
One way of verifying systems whose components interact by exchanging messages, such as distributed s...
In this paper we present a model of interactive programs in a purely functional style. We exploit la...
Recent program logics based on separation logic emphasise a modular approach to proving functional c...
This article demonstrates how a powerful and expressive abstraction from concurrency theory plays a ...