Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
astToInstructions :: Ast -> [Instruction] Source #
compileInstructions :: [Instruction] -> Put Source #
showInstructions :: [Instruction] -> IO () Source #
data Instruction Source #
NoOp | |
PushI Int | |
PushB Bool | |
PushSym String (Maybe [[Instruction]]) | |
PushStr String | |
PushList Int [[Instruction]] | |
PushArg Int | |
PutArg | |
Jump Int | |
JumpIfFalse Int | |
Def String Int [Instruction] | |
Fnv Int [String] Int [Instruction] [Int] (Maybe [[Instruction]]) | |
Call | |
Ret | |
Cond [Instruction] Int [Instruction] (Maybe [Instruction]) | |
Add | |
Sub | |
Mul | |
Div | |
Mod | |
XorB | ^ Comparison Operators |
Eq | |
NotEq | |
Less | |
LessEq | |
Great | |
GreatEq | |
And | |
Or | |
Not | |
Then | |
ToStr | |
Neg | |
Apnd | |
RemAllOcc | |
Get | |
Len |
Instances
Enum Instruction Source # | |
Defined in Compiler succ :: Instruction -> Instruction # pred :: Instruction -> Instruction # toEnum :: Int -> Instruction # fromEnum :: Instruction -> Int # enumFrom :: Instruction -> [Instruction] # enumFromThen :: Instruction -> Instruction -> [Instruction] # enumFromTo :: Instruction -> Instruction -> [Instruction] # enumFromThenTo :: Instruction -> Instruction -> Instruction -> [Instruction] # | |
Show Instruction Source # | |
Defined in Compiler showsPrec :: Int -> Instruction -> ShowS # show :: Instruction -> String # showList :: [Instruction] -> ShowS # | |
Eq Instruction Source # | |
Defined in Compiler (==) :: Instruction -> Instruction -> Bool # (/=) :: Instruction -> Instruction -> Bool # |
data CompileConstants Source #
Instances
Enum CompileConstants Source # | |
Defined in Compiler succ :: CompileConstants -> CompileConstants # pred :: CompileConstants -> CompileConstants # toEnum :: Int -> CompileConstants # fromEnum :: CompileConstants -> Int # enumFrom :: CompileConstants -> [CompileConstants] # enumFromThen :: CompileConstants -> CompileConstants -> [CompileConstants] # enumFromTo :: CompileConstants -> CompileConstants -> [CompileConstants] # enumFromThenTo :: CompileConstants -> CompileConstants -> CompileConstants -> [CompileConstants] # | |
Show CompileConstants Source # | |
Defined in Compiler showsPrec :: Int -> CompileConstants -> ShowS # show :: CompileConstants -> String # showList :: [CompileConstants] -> ShowS # | |
Eq CompileConstants Source # | |
Defined in Compiler (==) :: CompileConstants -> CompileConstants -> Bool # (/=) :: CompileConstants -> CompileConstants -> Bool # |