makeQDisc :: QDiscChoice -> IO (QDisc t)
makeQDisc choice = case choice of
    Fair      -> fairQDisc (const (return Nothing))
    Unbounded -> simpleUnboundedQDisc
    OnePlace  -> simpleOnePlaceQDisc
makeQDisc :: QDiscChoice -> IO (QDisc t)
makeQDisc choice = case choice of
    Fair      -> fairQDisc (const (return Nothing))
    Unbounded -> simpleUnboundedQDisc
    OnePlace  -> simpleOnePlaceQDisc
makeQDisc choice = case choice of
    Fair      -> fairQDisc (const (return Nothing))
    Unbounded -> simpleUnboundedQDisc
    OnePlace  -> simpleOnePlaceQDisc