hydra-0.1.0: Type-aware transformations for data and functional programs
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hydra.Mantle

Description

A set of types which supplement hydra/core with type variants, graphs, and elements

Synopsis

Documentation

data Comparison Source #

An equality judgement: less than, equal to, or greater than

data Element m Source #

A graph element, having a name, data term (value), and schema term (type)

Constructors

Element 

Instances

Instances details
(Read m, Ord m) => Read (Element m) Source # 
Instance details

Defined in Hydra.Mantle

Show m => Show (Element m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

showsPrec :: Int -> Element m -> ShowS #

show :: Element m -> String #

showList :: [Element m] -> ShowS #

Eq m => Eq (Element m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

(==) :: Element m -> Element m -> Bool #

(/=) :: Element m -> Element m -> Bool #

Ord m => Ord (Element m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

compare :: Element m -> Element m -> Ordering #

(<) :: Element m -> Element m -> Bool #

(<=) :: Element m -> Element m -> Bool #

(>) :: Element m -> Element m -> Bool #

(>=) :: Element m -> Element m -> Bool #

max :: Element m -> Element m -> Element m #

min :: Element m -> Element m -> Element m #

data Graph m Source #

A graph, or set of named terms, together with its schema graph

Constructors

Graph 

Fields

Instances

Instances details
(Read m, Ord m) => Read (Graph m) Source # 
Instance details

Defined in Hydra.Mantle

Show m => Show (Graph m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

showsPrec :: Int -> Graph m -> ShowS #

show :: Graph m -> String #

showList :: [Graph m] -> ShowS #

Eq m => Eq (Graph m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

(==) :: Graph m -> Graph m -> Bool #

(/=) :: Graph m -> Graph m -> Bool #

Ord m => Ord (Graph m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

compare :: Graph m -> Graph m -> Ordering #

(<) :: Graph m -> Graph m -> Bool #

(<=) :: Graph m -> Graph m -> Bool #

(>) :: Graph m -> Graph m -> Bool #

(>=) :: Graph m -> Graph m -> Bool #

max :: Graph m -> Graph m -> Graph m #

min :: Graph m -> Graph m -> Graph m #

data Precision Source #

Numeric precision: arbitrary precision, or precision to a specified number of bits

Instances

Instances details
Read Precision Source # 
Instance details

Defined in Hydra.Mantle

Show Precision Source # 
Instance details

Defined in Hydra.Mantle

Eq Precision Source # 
Instance details

Defined in Hydra.Mantle

Ord Precision Source # 
Instance details

Defined in Hydra.Mantle

data TypeScheme m Source #

A type expression together with free type variables occurring in the expression

Instances

Instances details
Read m => Read (TypeScheme m) Source # 
Instance details

Defined in Hydra.Mantle

Show m => Show (TypeScheme m) Source # 
Instance details

Defined in Hydra.Mantle

Eq m => Eq (TypeScheme m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

(==) :: TypeScheme m -> TypeScheme m -> Bool #

(/=) :: TypeScheme m -> TypeScheme m -> Bool #

Ord m => Ord (TypeScheme m) Source # 
Instance details

Defined in Hydra.Mantle

data TypedTerm m Source #

A type together with an instance of the type

Constructors

TypedTerm 

Instances

Instances details
(Read m, Ord m) => Read (TypedTerm m) Source # 
Instance details

Defined in Hydra.Mantle

Show m => Show (TypedTerm m) Source # 
Instance details

Defined in Hydra.Mantle

Eq m => Eq (TypedTerm m) Source # 
Instance details

Defined in Hydra.Mantle

Methods

(==) :: TypedTerm m -> TypedTerm m -> Bool #

(/=) :: TypedTerm m -> TypedTerm m -> Bool #

Ord m => Ord (TypedTerm m) Source # 
Instance details

Defined in Hydra.Mantle