apple-0.3.0.0: Apple array language compiler
Safe HaskellNone
LanguageHaskell2010

L

Synopsis

Documentation

data AlexPosn Source #

Constructors

AlexPn !Int !Int !Int 

Instances

Instances details
NFData AlexPosn Source # 
Instance details

Defined in L

Methods

rnf :: AlexPosn -> () #

Generic AlexPosn Source # 
Instance details

Defined in L

Associated Types

type Rep AlexPosn 
Instance details

Defined in L

Methods

from :: AlexPosn -> Rep AlexPosn x #

to :: Rep AlexPosn x -> AlexPosn #

Show AlexPosn Source # 
Instance details

Defined in L

Eq AlexPosn Source # 
Instance details

Defined in L

Ord AlexPosn Source # 
Instance details

Defined in L

Pretty AlexPosn Source # 
Instance details

Defined in L

Methods

pretty :: AlexPosn -> Doc ann #

prettyList :: [AlexPosn] -> Doc ann #

type Rep AlexPosn Source # 
Instance details

Defined in L

newtype Alex a Source #

Constructors

Alex 

Fields

Instances

Instances details
Applicative Alex Source # 
Instance details

Defined in L

Methods

pure :: a -> Alex a #

(<*>) :: Alex (a -> b) -> Alex a -> Alex b #

liftA2 :: (a -> b -> c) -> Alex a -> Alex b -> Alex c #

(*>) :: Alex a -> Alex b -> Alex b #

(<*) :: Alex a -> Alex b -> Alex a #

Functor Alex Source # 
Instance details

Defined in L

Methods

fmap :: (a -> b) -> Alex a -> Alex b #

(<$) :: a -> Alex b -> Alex a #

Monad Alex Source # 
Instance details

Defined in L

Methods

(>>=) :: Alex a -> (a -> Alex b) -> Alex b #

(>>) :: Alex a -> Alex b -> Alex b #

return :: a -> Alex a #

data Tok Source #

Constructors

EOF 

Fields

TokSym 

Fields

TokName 

Fields

TokIx 

Fields

TokB 

Fields

TokResVar 

Fields

TokInt 

Fields

TokFloat 

Fields

Instances

Instances details
NFData Tok Source # 
Instance details

Defined in L

Methods

rnf :: Tok -> () #

Generic Tok Source # 
Instance details

Defined in L

Associated Types

type Rep Tok 
Instance details

Defined in L

type Rep Tok = D1 ('MetaData "Tok" "L" "apple-0.3.0.0-inplace" 'False) (((C1 ('MetaCons "EOF" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn)) :+: C1 ('MetaCons "TokSym" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "sym") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Sym))) :+: (C1 ('MetaCons "TokName" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "_name") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Nm AlexPosn))) :+: C1 ('MetaCons "TokIx" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "six") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)))) :+: ((C1 ('MetaCons "TokB" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "_builtin") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Builtin)) :+: C1 ('MetaCons "TokResVar" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "_var") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Var))) :+: (C1 ('MetaCons "TokInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "int") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Integer)) :+: C1 ('MetaCons "TokFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "float") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Double)))))

Methods

from :: Tok -> Rep Tok x #

to :: Rep Tok x -> Tok #

Pretty Tok Source # 
Instance details

Defined in L

Methods

pretty :: Tok -> Doc ann #

prettyList :: [Tok] -> Doc ann #

type Rep Tok Source # 
Instance details

Defined in L

type Rep Tok = D1 ('MetaData "Tok" "L" "apple-0.3.0.0-inplace" 'False) (((C1 ('MetaCons "EOF" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn)) :+: C1 ('MetaCons "TokSym" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "sym") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Sym))) :+: (C1 ('MetaCons "TokName" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "_name") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Nm AlexPosn))) :+: C1 ('MetaCons "TokIx" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "six") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)))) :+: ((C1 ('MetaCons "TokB" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "_builtin") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Builtin)) :+: C1 ('MetaCons "TokResVar" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "_var") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Var))) :+: (C1 ('MetaCons "TokInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "int") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Integer)) :+: C1 ('MetaCons "TokFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "loc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AlexPosn) :*: S1 ('MetaSel ('Just "float") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Double)))))

data Sym Source #

Instances

Instances details
NFData Sym Source # 
Instance details

Defined in L

Methods

rnf :: Sym -> () #

Generic Sym Source # 
Instance details

Defined in L

Associated Types

type Rep Sym 
Instance details

Defined in L

type Rep Sym = D1 ('MetaData "Sym" "L" "apple-0.3.0.0-inplace" 'False) ((((((C1 ('MetaCons "Plus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Minus" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Fold" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Foldl" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Percent" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Times" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Semicolon" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Bind" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Pow" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LSqBracket" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "RSqBracket" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LBrace" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "RBrace" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IxTimes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LParen" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "RParen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Lam" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Dot" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Caret" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Quot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Zip" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Comma" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Underscore" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "QuestionMark" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Colon" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CondSplit" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Cor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ArrL" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ArrR" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "SymLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LBind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PolyBind" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "LRank" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Compose" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Arrow" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Sig" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MaxS" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "MinS" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "DIS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Succ" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Conv" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Access" 'PrefixI 'True) (S1 ('MetaSel ('Just "iat") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "TSig" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "Cons" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Snoc" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Do" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Tensor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Transp" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "PlusPlus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Rotate" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Last" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LastM" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Head" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "HeadM" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Tail" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "TailM" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Init" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "InitM" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Geq" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Gt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Eq" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Neq" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Leq" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Lt" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "FoldA" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FoldS" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Tilde" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Cyc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "A1" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Mod" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "AtDot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Eye" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Para" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Weier" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Ice" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "B" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Sharp" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "And" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Or" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Xor" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Not" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Sr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Sl" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "IDiv" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Inv" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Therefore" 'PrefixI 'False) (U1 :: Type -> Type))))))))

Methods

from :: Sym -> Rep Sym x #

to :: Rep Sym x -> Sym #

Pretty Sym Source # 
Instance details

Defined in L

Methods

pretty :: Sym -> Doc ann #

prettyList :: [Sym] -> Doc ann #

type Rep Sym Source # 
Instance details

Defined in L

type Rep Sym = D1 ('MetaData "Sym" "L" "apple-0.3.0.0-inplace" 'False) ((((((C1 ('MetaCons "Plus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Minus" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Fold" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Foldl" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Percent" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Times" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Semicolon" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Bind" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Pow" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LSqBracket" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "RSqBracket" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LBrace" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "RBrace" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IxTimes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LParen" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "RParen" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Lam" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Dot" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Caret" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Quot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Zip" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "Comma" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Underscore" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "QuestionMark" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Colon" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CondSplit" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Cor" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "ArrL" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ArrR" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "SymLog" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LBind" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PolyBind" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "LRank" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Compose" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Arrow" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Sig" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MaxS" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "MinS" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "DIS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Succ" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Conv" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Access" 'PrefixI 'True) (S1 ('MetaSel ('Just "iat") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "TSig" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "Cons" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Snoc" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Do" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Tensor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Transp" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "PlusPlus" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Rotate" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Last" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LastM" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Head" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "HeadM" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Tail" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "TailM" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Init" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "InitM" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Geq" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Gt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Eq" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Neq" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Leq" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Lt" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "FoldA" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FoldS" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Tilde" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Cyc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "A1" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Mod" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "AtDot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Eye" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Para" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Weier" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Ice" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "B" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Sharp" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "And" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Or" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Xor" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "Not" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Sr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Sl" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "IDiv" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Inv" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Therefore" 'PrefixI 'False) (U1 :: Type -> Type))))))))

data Builtin Source #

Instances

Instances details
NFData Builtin Source # 
Instance details

Defined in L

Methods

rnf :: Builtin -> () #

Generic Builtin Source # 
Instance details

Defined in L

Associated Types

type Rep Builtin 
Instance details

Defined in L

type Rep Builtin = D1 ('MetaData "Builtin" "L" "apple-0.3.0.0-inplace" 'False) (((((C1 ('MetaCons "BuiltinFRange" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinIota" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinFloor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinE" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinI" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinF" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinTrue" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinFalse" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "BuiltinSqrt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinPi" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinGen" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinRep" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinScan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinCons" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinNil" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BuiltinMMul" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinArr" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "BuiltinInt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinFloat" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinT" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinR" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinSin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinCos" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinScanS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinTan" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "BuiltinVMul" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinCyc" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinOdd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinEven" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinAbs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinD" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinVec" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BuiltinM" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinBool" 'PrefixI 'False) (U1 :: Type -> Type)))))))

Methods

from :: Builtin -> Rep Builtin x #

to :: Rep Builtin x -> Builtin #

Pretty Builtin Source # 
Instance details

Defined in L

Methods

pretty :: Builtin -> Doc ann #

prettyList :: [Builtin] -> Doc ann #

type Rep Builtin Source # 
Instance details

Defined in L

type Rep Builtin = D1 ('MetaData "Builtin" "L" "apple-0.3.0.0-inplace" 'False) (((((C1 ('MetaCons "BuiltinFRange" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinIota" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinFloor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinE" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinI" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinF" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinTrue" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinFalse" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "BuiltinSqrt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinPi" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinGen" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinRep" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinScan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinCons" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinNil" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BuiltinMMul" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinArr" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: ((((C1 ('MetaCons "BuiltinInt" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinFloat" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinT" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinR" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinSin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinCos" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinScanS" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinTan" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "BuiltinVMul" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinCyc" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinOdd" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinEven" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "BuiltinAbs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinD" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BuiltinVec" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "BuiltinM" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BuiltinBool" 'PrefixI 'False) (U1 :: Type -> Type)))))))

data Var Source #

Reserved/special variables

Constructors

VarX 
VarY 

Instances

Instances details
NFData Var Source # 
Instance details

Defined in L

Methods

rnf :: Var -> () #

Generic Var Source # 
Instance details

Defined in L

Associated Types

type Rep Var 
Instance details

Defined in L

type Rep Var = D1 ('MetaData "Var" "L" "apple-0.3.0.0-inplace" 'False) (C1 ('MetaCons "VarX" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "VarY" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Var -> Rep Var x #

to :: Rep Var x -> Var #

Pretty Var Source # 
Instance details

Defined in L

Methods

pretty :: Var -> Doc ann #

prettyList :: [Var] -> Doc ann #

type Rep Var Source # 
Instance details

Defined in L

type Rep Var = D1 ('MetaData "Var" "L" "apple-0.3.0.0-inplace" 'False) (C1 ('MetaCons "VarX" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "VarY" 'PrefixI 'False) (U1 :: Type -> Type))