Results 1 -
7 of
7
The Marriage of Effects and Monads
, 1998
"... this paper is to marry effects to monads, writing T for a computation that yields a value in and may have effects delimited by oe. Now we have that ( is ..."
Abstract
-
Cited by 75 (3 self)
- Add to MetaCart
this paper is to marry effects to monads, writing T for a computation that yields a value in and may have effects delimited by oe. Now we have that ( is
Monads and Effects
- IN INTERNATIONAL SUMMER SCHOOL ON APPLIED SEMANTICS APPSEM’2000
, 2000
"... A tension in language design has been between simple semantics on the one hand, and rich possibilities for side-effects, exception handling and so on on the other. The introduction of monads has made a large step towards reconciling these alternatives. First proposed by Moggi as a way of structu ..."
Abstract
-
Cited by 39 (6 self)
- Add to MetaCart
A tension in language design has been between simple semantics on the one hand, and rich possibilities for side-effects, exception handling and so on on the other. The introduction of monads has made a large step towards reconciling these alternatives. First proposed by Moggi as a way of structuring semantic descriptions, they were adopted by Wadler to structure Haskell programs, and now offer a general technique for delimiting the scope of effects, thus reconciling referential transparency and imperative operations within one programming language. Monads have been used to solve long-standing problems such as adding pointers and assignment, inter-language working, and exception handling to Haskell, without compromising its purely functional semantics. The course will introduce monads, effects and related notions, and exemplify their applications in programming (Haskell) and in compilation (MLj). The course will present typed metalanguages for monads and related categorica...
Evidence-based Audit
"... Authorization logics provide a principled and flexible approach to specifying access control policies. One of their compelling benefits is that a proof in the logic is evidence that an access-control decision has been made in accordance with policy. Using such proofs for auditing purposes is implici ..."
Abstract
-
Cited by 28 (9 self)
- Add to MetaCart
Authorization logics provide a principled and flexible approach to specifying access control policies. One of their compelling benefits is that a proof in the logic is evidence that an access-control decision has been made in accordance with policy. Using such proofs for auditing purposes is implicit in much of the work on authorization logics and proof-carrying authorization. This paper explores some ramifications of adopting this “proofs as log entries ” approach to auditing. Two benefits of evidence-based audit are a reduced trusted computing base and the ability to detect flaws in complex authorization policies. Moreover, the proof structure is itself useful, because operations like proof normalization can yield information about the relevance of policy statements. To explain these observations concretely, we develop a rich authorization logic based on a dependently-typed variant of DCC and prove the metatheoretic properties of subject-reduction and normalization. We show untrusted but well-typed applications, that access resources through an appropriate interface, must obey the access control policy and create proofs useful for audit. We show the utility of proof-based auditing in a number of examples and discuss several pragmatic issues, such as proof size, that must be addressed in this context. 1
Reducibility and ⊤⊤-lifting for computation types
- In Proc. 7th International Conference on Typed Lambda Calculi and Applications (TLCA), volume 3461 of Lecture Notes in Computer Science
, 2005
"... Abstract. We propose ⊤⊤-lifting as a technique for extending operational predicates to Moggi’s monadic computation types, independent of the choice of monad. We demonstrate the method with an application to Girard-Tait reducibility, using this to prove strong normalisation for the computational meta ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
Abstract. We propose ⊤⊤-lifting as a technique for extending operational predicates to Moggi’s monadic computation types, independent of the choice of monad. We demonstrate the method with an application to Girard-Tait reducibility, using this to prove strong normalisation for the computational metalanguage λml. The particular challenge with reducibility is to apply this semantic notion at computation types when the exact meaning of “computation ” (stateful, side-effecting, nondeterministic, etc.) is left unspecified. Our solution is to define reducibility for continuations and use that to support the jump from value types to computation types. The method appears robust: we apply it to show strong normalisation for the computational metalanguage extended with sums, and with exceptions. Based on these results, as well as previous work with local state, we suggest that this “leap-frog ” approach offers a general method for raising concepts defined at value types up to observable properties of computations. 1
CPS Translations and Applications: The Cube and Beyond
- Higher Order and Symbolic Computation
, 1996
"... Continuation passing style (CPS) translations of typed -calculi have numerous applications. However, the range of these applications has been conned by the fact that CPS translations are known for non-dependent type systems only, thus excluding well-known systems like the calculus of constructions ( ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
Continuation passing style (CPS) translations of typed -calculi have numerous applications. However, the range of these applications has been conned by the fact that CPS translations are known for non-dependent type systems only, thus excluding well-known systems like the calculus of constructions (CC) and the logical frameworks (LF). This paper presents techniques for CPS translating systems with dependent types, with an emphasis on pure type-theoretical applications.
Monad Translating Inductive and Coinductive Types
- In Proc. Partial Evaluation and Semantics-Based Program Manipulation
, 2003
"... We show that the call-by-name monad translation of simply typed lambda calculus extended with sum and product types extends to special and general inductive and coinductive types so that its crucial property of preserving typings and - and commuting reductions is maintained. Speci c similar-pu ..."
Abstract
-
Cited by 5 (0 self)
- Add to MetaCart
We show that the call-by-name monad translation of simply typed lambda calculus extended with sum and product types extends to special and general inductive and coinductive types so that its crucial property of preserving typings and - and commuting reductions is maintained. Speci c similar-purpose translations such as CPS translations follow from the general monad translations by specialization for appropriate concrete monads.
Monads and Effects (revised)
, 2000
"... . A tension in language design has been between simple semantics ..."

