[GHC] #7417: replace Control.Concurrent.QSem (was: Undeprecate Control.Concurrent.QSem)

GHC cvs-ghc at haskell.org
Fri Nov 16 14:21:25 CET 2012


#7417: replace Control.Concurrent.QSem
-------------------------------+--------------------------------------------
  Reporter:  tibbe             |          Owner:                  
      Type:  bug               |         Status:  new             
  Priority:  normal            |      Milestone:                  
 Component:  libraries/base    |        Version:  7.6.1           
Resolution:                    |       Keywords:                  
        Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  None/Unknown      |     Difficulty:  Unknown         
  Testcase:                    |      Blockedby:                  
  Blocking:                    |        Related:                  
-------------------------------+--------------------------------------------
Changes (by simonmar):

  * status:  closed => new
  * resolution:  wontfix =>


Comment:

 Ian is right, there's no good reason to have these in base, except that we
 inconvenience users by removing them without making alternative provisions
 (Duncan's point).  So I propose that we

  * make sure there's a clear replacement
  * arrange that it will be in the platform when the platform adopts 7.8

 and if we can't do these, then we should put the original modules back. (I
 think we could do without `mergeIO`, but at least `QSem` is important).

 I've been experimenting with semaphore implementations:
 [https://github.com/simonmar/sem]

 The one in [https://github.com/simonmar/sem/blob/master/Sem2.hs] is
 reasonably simple, safe from async exceptions, and has good performance
 (better than the ones in SafeSemaphore).  We could make a new package,
 with this as a starting point perhaps?  It's only a tiny bit of code
 though.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7417#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the Glasgow-haskell-bugs mailing list