DE eng

Search in the Catalogues and Directories

Hits 1 – 7 of 7

1
A.: Lazy evaluation and delimited control
In: http://www.osl.iu.edu/publications/prints/2009/garcia09popl-lazy.pdf (2009)
BASE
Show details
2
Proceedings of the Third ACM SIGPLAN Workshop on Continuations (CW'01)
In: http://www.cs.indiana.edu/hyplan/sabry/papers/cw2001.ps (2001)
BASE
Show details
3
Recursion is a Computational Effect
In: http://www.cs.indiana.edu/l/www/ftp/techreports/TR546.pdf (2000)
BASE
Show details
4
Recursion is a Computational Effect
In: http://www.cs.indiana.edu/~sabry/papers/recursion-monads-tr.pdf (2000)
Abstract: In a recent paper, Launchbury, Lewis, and Cook observe that some Haskell applications could benefit from a combinator mfix for expressing recursion over monadic types. We investigate three possible definitions of mfix and implement them in Haskell. Like traditional fixpoint operators, there are two approaches to the definition of mfix: an unfolding one based on mathematical semantics, and an updating one based on operational semantics. The two de nitions are equivalent in pure calculi but have different behaviors when used within monads. The unfolding version can be easily de ned in Haskell if one restricts fixpoints to function types. The updating version is much more challenging to define in Haskell despite the fact that its definition is straightforward in Scheme. After studying the Scheme definition in detail, we mirror it in Haskell using the primitive unsafePerformIO. The resulting definition of mfix appears to work well but proves to be unsafe, in the sense that it breaks essential properties of the purely functional subset of Haskell. We conclude that the updating version of mfix should be treated as a monadic effect. This observation leads to a safe definition based on monad transformers that pinpoints and exposes the subtleties of combining recursion with other effects and puts them under the programmer's control to resolve as needed. The conclusion is that Haskell applications that need the functionality of mfix can be written safely in any Haskell dialect that supports the multiparameter classes necessary for defining monad transformers. No other extensions to standard Haskell are needed, although some syntactic abstractions and libraries can make the task of writing recursive monadic bindings much more convenient.
URL: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.90.2485
http://www.cs.indiana.edu/~sabry/papers/recursion-monads-tr.pdf
BASE
Hide details
5
A reflection on call-by-value
In: http://homepages.inf.ed.ac.uk/wadler/papers/reflection-journal/reflection-journal.pdf (1996)
BASE
Show details
6
Reasoning about Explicit and Implicit Representations of State
In: http://www.cs.rice.edu/CS/PLT/Publications/./sipl94-sf.ps.gz (1993)
BASE
Show details
7
A Monadic Framework for Delimited Continuations
In: http://semarch.linguistics.fas.nyu.edu/barker/dybvig-et-al-monadic-delimited.pdf
BASE
Show details

Catalogues
0
0
0
0
0
0
0
Bibliographies
0
0
0
0
0
0
0
0
0
Linked Open Data catalogues
0
Online resources
0
0
0
0
Open access documents
7
0
0
0
0
© 2013 - 2024 Lin|gu|is|tik | Imprint | Privacy Policy | Datenschutzeinstellungen ändern