ERK OK, L., LAUNCHBURY, J., AND MORAN, A. Semantics of fixIO. In Fixed Points in Computer Science Workshop, FICS'01 (September 2001).

 Home/Search   Document Details and Download   Summary   Related Articles  

This paper is cited in the following contexts:
A Recursive do for Haskell - Erkök, Launchbury (2002)   (3 citations)  Self-citation (Ok Launchbury)   (Correct)

....mfix, known as a value recursion operator, performs the required recursive computation. As we will briefly review in the next section, such operators exist for a variety of monads; the most well known examples being the functions fixIO and fixST for the internal IO and state monads of Haskell [5, 8]. Regarding the use of such looping operators, Claessen writes [3] loop combinators are unfortunate because they introduce extra clutter in the code that is hard to motivate. That is indeed the case, as evidenced by the difference between the specifications of the half adder and the ....

....putStr not singleton and consider the following expression: mdo xs checkSingle xs mfix (#xs. do xs checkSingle xs return xs) #xs. return ( where the call to mfix will invoke the Haskell library function fixIO : # IO #) IO #, the value recursion operator for the IO monad [8]. Intuitively, when executed we expect this expression to print not singleton , as the value of xs should simply be 32 the infinite list of 1 s. Alas, the translation will diverge The reason is simply that the pattern matching in checkSingle is too strict for the computation to proceed, failing ....

ERK OK, L., LAUNCHBURY, J., AND MORAN, A. Semantics of fixIO. In Fixed Points in Computer Science Workshop, FICS'01 (September 2001).

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC