algebraic-classes-0.7: examples/Fractional.hs
{-# OPTIONS_GHC -ddump-splices -fno-warn-orphans #-}
{-# LANGUAGE TemplateHaskell, TypeFamilies, DeriveTraversable, RankNTypes #-}
import Data.Algebra
import Data.Ratio
deriveInstance [t| forall m n. (Num m, Num n) => Num (m, n) |]
deriveInstance [t| forall m n. (Fractional m, Fractional n) => Fractional (m, n) |]
test :: (Ratio Int, Ratio Int)
test = (5, 3) / (3, 2) + (1, 4)