turion / rhine

Haskell Functional Reactive Programming framework with type-level clocks
http://hackage.haskell.org/package/rhine
123 stars 21 forks source link

type alias simplifications #94

Closed ggreif closed 6 years ago

turion commented 6 years ago

I thought this gives problems with not completely applied type variables..?

turion commented 6 years ago

I'm not so sure right now whether this can't lead to problems anywhere. For sure the following is problematic:

type Foo a b = (a, b)

instance Functor (Foo a) where
   ...

But I don't know whether the opposite is ever problematic, which is what you're proposing. Any idea?

ggreif commented 6 years ago

Hmmm, you are right, and travis does confirm it :-(

This would work when the original definition was a data or newtype. But not for type, which cannot be partially applied. My bad, sorry for the noise.