There are a couple of reasons these dependencies are not free:

* These packages are not in the Haskell platform, and probably never will be. This kills any chance of `pipes` ever getting into the platform. When I added `void` as a dependency I thought that it would eventually get into `base` or minimally into the platform, but now I doubt it. I've already asked Edward about this and he isn't inclined to fix it.

* I've been told several times that somebody would not use `pipes` because it is too "heavy-weight". The `void` dependency contributes to that perception.

* This has historically caused problems. See here for an example where Michael Thompson was having trouble testing a custom `text` because `pipes` transitively depended on `text`:

https://github.com/Gabriel439/Haskell-Pipes-Library/issues/104

* I have no guarantee that Edward won't unexpectedly add more dependencies later.

Also, it's kind of silly that `void` transitively depends on `text` and `hashable`.

On 01/12/2014 12:26 PM, Andrew Cowie wrote:
On Sun, 2014-01-12 at 11:46 +0700, Gabriel Gonzalez wrote:
So apparently `void` just became a much costlier dependency recently.
The reason why is that `void` depends on `semigroups` and Edward added
`text`/`hashable`/`nats`/`unordered-containers` as dependencies to
`semigroups` in version 0.10.

{shrug}

I'd say just leave your use of **void** alone. You're almost certain to
have all those things installed on your system to do anything
non-trivial anyway. Doesn't much matter how early in the dependency
chain they get brought in.

AfC
Sydney



--
You received this message because you are subscribed to the Google Groups "Haskell 
Pipes" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].

Reply via email to