#4535: Add tryReadChan to Chan
---------------------------------+------------------------------------------
    Reporter:  mitar             |       Owner:                
        Type:  proposal          |      Status:  new           
    Priority:  normal            |   Component:  libraries/base
     Version:  7.1               |    Keywords:                
    Testcase:                    |   Blockedby:                
          Os:  Unknown/Multiple  |    Blocking:                
Architecture:  Unknown/Multiple  |     Failure:  None/Unknown  
---------------------------------+------------------------------------------
 Now that `isEmptyChan` is deprecated (#4154) it would be useful to add
 `tryReadChan`. It seems it is possible to define it so that it does not
 block like `isEmptyChan`. This is because semantics is a bit different:
 `tryReadChan` is allowed to return `Nothing` also when `Chan` is non-
 empty, but it would block. Contrary, `isEmptyChan` is expected that it
 would return `False` only if `Chan` is really empty.

 I have defined also two new `MVar` functions which helped me implementing
 `tryReadChan`: `tryReadMVar` and `tryModifyMVar`. Probably it would be
 useful to make them public.

 Please comment. I propose three weeks for discussion.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4535>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to