[Haskell-cafe] Undecidable instances with functional dependencies

Yves Parès limestrael at gmail.com
Tue Feb 16 04:14:51 EST 2010


However, TypeFamilies seems too be non portable as according to this
http://www.haskell.org/haskellwiki/GHC/Type_families, it works only as from
GHC 6.10.1.


Henning Thielemann-4 wrote:
> 
> Miguel Mitrofanov schrieb:
>> -- {-# LANGUAGE FunctionalDependencies#-}
>> -- {-# LANGUAGE MultiParamTypeClasses #-}
>> {-# LANGUAGE TypeFamilies #-}
>> module Register where
>> -- class Register a r | a -> r
>> class Register a where
>>     type R a
>> -- instance Register Int Int
>> instance Register Int where
>>     type R Int = Int
>> -- instance Register Float Float
>> instance Register Float where
>>     type R Float = Float
>> -- instance (Register a1 r1, Register a2 r2) => Register (a1, a2) (r1, 
>> r2)
>> instance (Register a, Register b) => Register (a, b) where
>>     type R (a, b) = (R a, R b)
>>
> So type functions are undecidable by default?
> 
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
> 
> 


-----
Yves Parès

Live long and prosper
-- 
View this message in context: http://old.nabble.com/Undecidable-instances-with-functional-dependencies-tp27555079p27605436.html
Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.



More information about the Haskell-Cafe mailing list