
17 Oct
2007
17 Oct
'07
3:28 p.m.
On Wed, Oct 17, 2007 at 01:28:45AM +0100, Duncan Coutts wrote:
On Wed, 2007-10-17 at 00:35 +0100, Ian Lynagh wrote:
package foo: module Foo where data T
package bar: module Bar where bar :: T
package baz: module Baz where baz :: T -> ()
then baz bar might be a type error if I have multiple versions of foo installed and bar and baz have been compiled against different versions.
Sure, those are not compatible. But we can detect that just by looking at the dependencies of each package.
In general it is possible to have 2 different versions of a package in a single program, though, e.g. bar and baz could internally use different versions of a binary-tree package. Thanks Ian