
Hi, Am Sonntag, den 17.04.2011, 14:37 -0300 schrieb Felipe Almeida Lessa:
On Sun, Apr 17, 2011 at 12:53 PM, Joachim Breitner
wrote: work of 1 module in 10 packages. The new OpenGL packages have split out lots of small packages (OpenGLRaw, StateVar, Tensor, ObjectName). Please review this and see if you can somehow lessen the package number inflation before your version enters the platform.
At least StateVar is very useful outside OpenGL.
I’m not saying it is not useful. But there is very little code and most of it is rather, well, trivial. So if you need the functionality in one of your packages only, then you can put it there. If you need it in on collection of multiple packages with one package dominating the dependency tree, then put it there. A package of its own for these few lines is only required if * Package A and package B provide an _interface_ in terms of StateVar * Neither A depends on B nor B depends on A * There will be a package C that not only uses the interface of both A and B but also combines them, e.g. really requires that the same type is used in both the interfaces. Also, small packages without external dependencies can be combined in one package without much loss. E.g. a package opengl-utils (or some better name) that provides all of StateVar, Tensor, ObjectName would do the job equally well. I know that its tempting to have very fine-grained Cabal packages, because its so cheap to put them on Hackage and leave it to cabal-install to install take care of them. Unfortunately, it doesn’t scale on the Distribution side very well – and we are already trying hard to keep the per-package maintenance cost down. Greetings, Joachim -- Joachim Breitner e-Mail: mail@joachim-breitner.de Homepage: http://www.joachim-breitner.de ICQ#: 74513189 Jabber-ID: nomeata@joachim-breitner.de