{-# LANGUAGE TypeFamilies, MultiParamTypeClasses #-} module Language.XDsp.Semantics.CtrlExtensions ( RCmpr (..) ,RCtrl (..) ) where import Language.XDsp.Semantics.Core -- control extensions, e.g. if-then-else class RCmpr el where data RBool el :: * req :: el -> el -> RBool el rne :: el -> el -> RBool el rlt :: el -> el -> RBool el rle :: el -> el -> RBool el rgt :: el -> el -> RBool el rge :: el -> el -> RBool el class (Dsp repr, Var a) => RCtrl repr el a where rIf :: RBool el -> repr a -> repr a rIfElse :: RBool el -> repr a -> repr a -> repr a