[Haskell-cafe] Strange error with type classes + associated types

Brent Yorgey byorgey at seas.upenn.edu
Mon Apr 19 00:02:12 EDT 2010


Conal,

Thanks for looking into this!  Making (:-*) into a proper type seems
promising.  I did try wrapping (:-*) in a newtype but that didn't
help (although I didn't expect it to).

I see you just uploaded a new version of vector-space; what's new in
0.6.2?

-Brent

On Sat, Apr 17, 2010 at 10:28:45AM -0700, Conal Elliott wrote:
> Oh!  I'd completely forgotten about this idea.  Looking at Data.LinearMap in
> vector-space, I see a comment about exactly this ambiguity, as well as the
> start of a new module that wraps a data type around the linear map
> representation.  I don't recall whether I got stuck or just distracted.
> 
> On Sat, Apr 17, 2010 at 3:46 AM, Roman Leshchinskiy <rl at cse.unsw.edu.au>wrote:
> 
> > On 17/04/2010, at 11:00, Conal Elliott wrote:
> >
> > > I'm unsure now, but I think I tried making Basis a data type (not syn)
> > and ran into the problem I mentioned above.  The Basis *synonyms* also have
> > HasTrie instances, which is crucially important.  If we switch to
> > (injective) data types, then we lose the HasTrie instances.  I'd be okay
> > with defining HasTrie instances (preferably via "deriving") for the
> > associated Basis data types, but I couldn't figure out how to.  Maybe it's
> > not possible currently, or maybe I just didn't know how.
> >
> > Could you perhaps make (:-*) a proper type rather than a synonym? That
> > would help with the ambiguity.
> >
> > Roman
> >
> >
> >

> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list