úÎB;û?      !"#$%&'()*+,-./0123456789:;<=> experimentalconal@conal.net Safe-Inferred ,Types with inequality. Minimum definition: '(<*)'. *Types with equality. Minimum definition: '(==*)'. Types with conditionals  1 computed the boolean analog of a specific type. Generalized boolean class 2Expression-lifted conditional with condition last Point-wise conditional !Generalized cropping, filling in ? where the test yields false. 6A generalized replacement for guards and chained ifs. 8A generalized version of a case like control structure.  Variant of @ using   and '(<=*)'  Variant of A using   and '(>=*)'  Variant of @ and A using   and '(<=*)' 5 BCDEFGHIJKLMNOPQRSTUVWXYZ[\]    )  BCDEFGHIJKLMNOPQRSTUVWXYZ[\] Safe-Inferred  !"#$%  !"#$  !"#$  !"#$ experimentaljbra@informatik.uni-kiel.de Safe-Inferred%Deep embedded version of ^. @ Efficient, machine-independent access to the components of a  floating-point number. 3A complete definition has to define all functions. &  if the argument is an IEEE " not-a-number" (NaN) value. ' ; if the argument is an IEEE infinity or negative infinity. ( + if the argument is an IEEE negative zero. ) 3 if the argument is an IEEE floating point number. *Ba version of arctangent taking two real floating-point arguments.  For real floating x and y, _ y x computes the angle C (from the positive x-axis) of the vector from the origin to the  point (x,y). _ y x returns a value in the range [-pi,  pi]<. It follows the Common Lisp semantics for the origin when ! signed zeroes are supported. _ y 1, with y in a type  that is %", should return the same value as ` y. +Deep embedded version of ^. ' Extracting components of fractions. Minimal complete definition: ,,  a, b and c. , The function , takes a real fractional number x  and returns a pair (n,f) such that x = n+f, and:  n- is an integral number with the same sign as x; and  f. is a fraction with the same type and sign as x, % and with absolute value less than 1. The default definitions of the c, b, d  and a functions are in terms of ,. -d x returns the integer nearest x between zero and x .a x returns the nearest integer to x;  the even integer if x% is equidistant between two integers /c x) returns the least integer not less than x 0b x/ returns the greatest integer not greater than x. 1A deep embedded version of e. 2 Integral numbers, supporting integer division. &Minimal complete definition is either 6 and 7 - or the other four functions. Besides that 8 always  has to be implemented. 2)Integer division truncated towards zero. 3Integer reminder, satisfying:  (x 2 y) * y + (x 3 y) == x 45Integer division truncated toward negative infinity. 5Integer modulus, satisfying:  (x 4 y) * y + (x 5 y) == x 6 Simultaneous 2 and 3. 7 Simultaneous 4 and 5. 8%Create a integer from this integral. 9An extension of f& that supplies the integer type of a ? given number type and a way to create that number from the  integer. :+The accociated integer type of the number. ;2Construct the number from the associated integer. < Variant of g for generalized booleans. = Variant of h for generalized booleans. > Variant of i for generalized booleans. jOnly for internal use. '%&'()*+,-./0123456789:;kl<=>jmnopqrstuv%&'()*+,-./0123456789:;<=>9:;12345678+,-./0%&'()*<=>%&'()*+,-./0123456789:;kl<=>jmnopqrstuvw      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG'FG(HIJKLMNOPQRSTUVWXYZ[\]^_`abcCdeCd.CdfCg2Cg4Cg3Cg1CghCijCgkCglCgmnopqrstuvwxyz{ Boolean-0.2 Data.BooleanData.Boolean.OverloadData.Boolean.NumbersOrdB<*>=*>*<=*EqB==*/=*IfBifB BooleanOfBooleantruefalsenotB&&*||*booleancondcropguardedBcaseBminBmaxBsort2B&&||not ifThenElse==/=<><=>=minmax RealFloatBisNaN isInfiniteisNegativeZeroisIEEEatan2 RealFracBproperFractiontruncateroundceilingfloor IntegralBquotremdivmodquotRemdivMod toIntegerBNumB IntegerOf fromIntegerBevenBoddB fromIntegralBbase Data.Monoidmemptyghc-prim GHC.Classesife $fOrdB(->) $fEqB(->) $fIfB(->) $fBoolean(->) $fIfB(,,,) $fIfB(,,)$fIfB(,)$fIfB[] $fOrdBChar $fEqBChar $fIfBChar $fOrdBBool $fEqBBool $fIfBBool $fOrdBDouble $fEqBDouble $fIfBDouble $fOrdBFloat $fEqBFloat $fIfBFloat $fOrdBInteger $fEqBInteger $fIfBInteger $fOrdBInt$fEqBInt$fIfBInt $fBooleanBool GHC.Float RealFloatatanGHC.RealIntegralGHC.NumNumevenodd fromIntegral fromInteger'.:##$fRealFloatBDouble$fRealFracBDouble$fRealFloatBFloat$fRealFracBFloat$fIntegralBInteger$fIntegralBInt $fNumBDouble $fNumBFloat $fNumBInteger $fNumBInt