Stop using "Int" for microsecond delays in "base"

Bas van Dijk v.dijk.bas at gmail.com
Sun Mar 27 11:17:35 CEST 2011


On 27 March 2011 07:59, Edward Kmett <ekmett at gmail.com> wrote:
> On Sat, Mar 26, 2011 at 3:44 PM, Bas van Dijk <v.dijk.bas at gmail.com> wrote:
>>
>> Or take the one from concurrent-extra:
>>
>>
>> http://hackage.haskell.org/packages/archive/concurrent-extra/0.6.0.1/doc/html/Control-Concurrent-Thread-Delay.html
>
> I'll admit the main problem that I have with the threadDelay in
> concurrent-extra is the gratuitously unicode source file.
> I wound up having to reimplement it inside a library of mine to avoid adding
> a dependency on that extension and the unrelated dependency on stm. =(
> (Technically, I implemented it directly first, then found concurrent-extra
> and wasn't willing to refactor to use yours as a result of those.)
> You are of course free to implement things as you see fit, but little things
> like that do impact adoption.
> -Edward

Note that 'delay' uses the 'threadDelay' function internally. AFAIK,
this function is only supported in GHC. So to build the module you
need GHC anyway which already supports the UnicodeSyntax language
extension (since 6.12.1).

I do agree that the dependency on stm is unfortunate. I will see if I
can put the modules Control.Concurrent.Thread.Delay and
Control.Concurrent.Timeout into a separate package. Any naming
suggestions? unbounded-delays or something?

Bas



More information about the Libraries mailing list