multiple cabal files in one directory?

Magnus Therning magnus at
Wed Jan 12 20:32:16 CET 2011

On 12/01/11 17:54, Kathleen Fisher wrote:
> On Jan 12, 2011, at 3:59 AM, Henning Thielemann wrote:
>> My question is: What is really the benefit of having multiple packages in
>> one directory? kahl at has commented on this question, but his
>> use case didn't convince me. Building many packages at once, an
>> inter-package Make so to speak, would be nice, but this could be separate
>> from the technique of building one package.
> I can explain why the question occurred to me, but I'm a newbie to Haskell
> library construction, so I could have just set things up badly.
> I have two libraries that both implement embedded domain specific languages
> in haskell, pads and forest, with forest depending on pads.  Because they

Will pads be used on its own to the extent that it's painful to always get
forest and pads together?

> are both languages, I put the Pads modules in Language.Pads.XXX and the
> Forest modules in Language.Forest.XXX.  I have a single development space
> with a directory Language with subdirectories Pads and Forest.  Now I want
> to to be able to install these libraries with cabal.  The place where it
> seems like I am supposed to put the cabal file is the directory containing
> the Language directory, but that means I need one cabal file for Pads and
> another for Forest.  Rearranging my directory structure to separate the two
> packages is a pain because the files are under version control in CVS.

With more modern version control systems you can split a single repo into
multiple repos, with the history for the files in the different repos

> I'm guessing I'm missing the right model for how to arrange Haskell source
> code bases.  Suggestions for how I should do things differently?

Splitting things is often good, but sometimes it's easy to split things even
when it's unnecessary.


Magnus Therning                      OpenPGP: 0xAB4DFBA4
email: magnus at   jabber: magnus at
twitter: magthe     

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the Libraries mailing list