13 Oct 17:23
Associated Types and several Classes
From: Martin Hofmann <martin.hofmann <at> uni-bamberg.de>
Subject: Associated Types and several Classes
Newsgroups: gmane.comp.lang.haskell.cafe
Date: 2008-10-13 15:25:15 GMT
Subject: Associated Types and several Classes
Newsgroups: gmane.comp.lang.haskell.cafe
Date: 2008-10-13 15:25:15 GMT
> {-# OPTIONS_GHC -fglasgow-exts #-}
> module Test where
>import qualified Data.Set as S
Hi. I try to model the following: Hypotheses are build up from Rules,
which itself are made of the type Rule. Because I may change the
implementation later, I want to use type classes, which define the
signature of my functions I will use in other modules.
>class CRule r
>class (CRule (CRulesRule r) ) => CRules r where
> type CRulesRule r
>class (CRule (CHypoRule h), CRules (CHypoRules h) ) => CHypo h where
> type CHypoRules h
> type CHypoRule h
> hypo ::
> CHypoRules h ->
> CHypoRule h ->
> h
-- | Rule
>data Rule = Rule Int deriving(Eq,Ord)
>instance CRule Rule
-- | Rules
>type Rules = S.Set Rule
(Continue reading)
RSS Feed