idris-1.0: Functional Programming Language with Dependent Types

Copyright | License : BSD3
Maintainer | The Idris Community.
Safe Haskell | None
Language | Haskell98

IRTS.Simplified

Description

# Documentation

simplifyDefs :: DDefs -> [(Name, DDecl)] -> TC [(Name, SDecl)] #

data SDecl #

Constructors

SFun Name [Name] Int SExp |

Instances

Show SDecl # |
Methods showsPrec :: Int -> SDecl -> ShowS # show :: SDecl -> String # showList :: [SDecl] -> ShowS #

data SExp #

Constructors

SV LVar |
SApp Bool Name [LVar] |
SLet LVar SExp SExp |
SUpdate LVar SExp |
SCon (Maybe LVar) Int Name [LVar] |
SCase CaseType LVar [SAlt] |
SChkCase LVar [SAlt] |
SProj LVar Int |
SConst Const |
SForeign FDesc FDesc [(FDesc, LVar)] |
SOp PrimFn [LVar] |
SNothing |
SError String |

Instances

Show SExp # |
Methods showsPrec :: Int -> SExp -> ShowS # show :: SExp -> String # showList :: [SExp] -> ShowS #

data SAlt #

Constructors

SConCase Int Int Name [Name] SExp |
SConstCase Const SExp |
SDefaultCase SExp |

Instances

Show SAlt # |
Methods showsPrec :: Int -> SAlt -> ShowS # show :: SAlt -> String # showList :: [SAlt] -> ShowS #