Proposal #3537: Add missing NFData instances to parallel

Roel van Dijk vandijk.roel at gmail.com
Wed Sep 23 07:45:34 EDT 2009


Control.Parallel.Strategies contains many NFData instances for
types defined in base, but not all. I propose adding NFData
instances for all types in base where it makes sense.

The specific issue I had was with Data.Version. I wanted to 'rnf'
some type which contained a Version, but it had no instance for
NFData. The only solution is to add an instance in your own code,
where it doesn't really belong. Therefor I checked the base package
for other other types which also lacked an NFData instance.

I would like some feedback on the instances for STRef and
IORef. Does it make sense to have them? I used a trick to force
their evaluation since their constructors are not exported.

Discussion deadline: October 7
Ticket: http://hackage.haskell.org/trac/ghc/ticket/3537

Regards,
Roel van Dijk


More information about the Libraries mailing list