On 29 September 2010 20:48, Ryan Ingram <ryani.s...@gmail.com> wrote: > But it doesn't let you partially apply the type synonym. > > On the other hand, if you did this: > > newtype Compose f g a = O { unO :: f (g a) } > type Poly k = Compose (Vect k) Monomial > > instance Monad (Poly k) where ... > > would work, but now you have to wrap/unwrap Compose in the instance > definition.
LiberalTypeSynonyms lets you partially apply type synonyms. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe