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 <r...@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@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to