On Thu, Apr 15, 2010 at 12:48:20AM +1000, Roman Leshchinskiy wrote: > > > > > Right, this seems weird to me. Why is there still a 'u' mentioned in > > the constraints? Actually, I don't even see why there ought to be > > both v and v1. The type of (*.*) mentions three type variables, u, v, and > > w: > > > > (*.*) :: (HasBasis u, HasTrie (Basis u), > > HasBasis v, HasTrie (Basis v), > > VectorSpace w, > > Scalar v ~ Scalar w) > > => (v :-* w) -> (u :-* v) -> u :-* w > > Note that (:-*) is a type synonym: > > type :-* u v = MSum (Basis u :->: v)
Aha! That's what I was missing. Thanks for the insight, Roman. I guess it's time to go bug Conal... =) -Brent _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe