p
PairTree QuadTree TripleTree ImperativeTests MatchClause MM
Pair
AttributionTests DynamicAttributionTests
PairTree
AttributionTests
par
Lambda lambda2
Parameter
SymbolTable
parameterdecl
SyntaxAnalysis
parameters
TypeAnalyser
ParamInfo
SymbolTable
parammode
TypeAnalyser
params
Call ProcDecl BuiltinProc
paramsToDoc
PrettyPrinter
paramtype
TypeAnalyser
ParEagerSubst
lambda2
ParEagerSubstEvaluator
lambda2
parenexpr
Parser
ParenPrettyPrinterTests
output
ParLazy
lambda2
ParLazyShare
lambda2
ParLazyShareEvaluator
lambda2
ParLazySubst
lambda2
ParLazySubstEvaluator
lambda2
ParLazyUpdate
lambda2
ParLazyUpdateEvaluator
lambda2
parser
dataflow Parser imperative compiler SyntaxAnalysis lambda lambda2 base Parser L0 L1 L2 L3 L4 SyntaxAnalysis picojava transform Parser
ParserDriver
obr
ParserTests
tests tests
ParserUtilitiesTests
util
ParsingMain
til
ParsingTests
json
pattern
Parser Syntax
PC
RISC
picojava
example
PicoJavaBenchmark
benchmark
pl1
PositionalRewriterTests
pl2
PositionalRewriterTests
Plus
Syntax
PlusExp
ObrTree
pn
ClosureValue FunctionSpec
po
PositionalRewriterTests
POP
StackOps RISCISA
Pos
Parser SyntaxAnalysis
PositionalRewriterTests
rewriting
positionBlock
SECDBase
posname
Parser
PostOp
ParenPrettyPrinterTests
pp1
ImperativeTests
pp2
ImperativeTests
ppp
ImperativeTests
pprintast
Driver
pprintcast
TranslatingDriver
pprintiast
TransformingDriver
precedence
oneohonecompanies Precedence
PredefinedTypes
picojava
PreOp
ParenPrettyPrinterTests
pretty
PrettyPrinter PrettyPrinter PrettyPrinter
prettyprint
RISCISA
PrettyPrinter
imperative driver json lambda2 c source c source c source source c source c source
PrettyPrinterTests
output
prevloc
SymbolTable
primary
TIL1_1
PrimExp
AST
PrimitiveDecl
AbstractSyntax
Primitives
Syntax
primstmt
Parser
primTable
SECD SECDBase
PrimTypeValue
SECDBase
PrimValue
SECDBase
printast
Driver
printcast
TranslatingDriver
printiast
TransformingDriver
prio
Analysis InOp PostOp PreOp
prioenv
Analysis
priority
CAddExp CAndExp CDivExp CEqExp CGeExp CGtExp CLeExp CLtExp CModExp CMulExp CNeExp CNegExp CNotExp COrExp CSubExp NegExp NotExp ProdExpression RelationalExpression SumExpression CAddrExp CDerefExp InOp PostOp PreOp
ProcDecl
source
Procedure
SymbolTable
procedureCall
Parser
procedureDeclaration
Parser
process
Driver Imperative ImperativeGen Driver Lambda Lambda Driver Driver ParserDriver SemanticDriver Main ParsingMain TransformingMain Driver CompilerTests GeneratingREPL
processast
Driver TransformingDriver
processBoolean
ConversionOps
processInteger
ConversionOps
processline
Lambda GeneratingREPL
ProdExpression
source
productArity
GenSeqTree Leaf ListTree MapTree Pair PairTree QuadTree SetTree TripleTree Unused Leaf Pair Unused Assign Block Empty If Return While For Foreach Add Asgn Div Mul Neg Null Num Seqn Sub Var While Pos And Apply Assign Binding Block BoolVal CallCC Divide Empty Equal ExprStmt Greater GreaterEq If Import IswimProg Lambda Less LessEq Let LetRec LetRecStmt LetStmt Match MatchClause Minus MkRef Negate Not NotEqual NumVal Or Pattern Plus Primitives Remainder Return StringVal ThrowTo Times Tuple Val Variable While BooleanTypeValue Equals FalseValue PushFalse PushTrue Test TrueValue ConversionError ToBoolean ToInt ToString ExnContValue SetHandler Alloc Get Put RefTypeValue RefValue LessThan LessThanOrEqual Add Div DivisionByZero IntTypeValue IntValue Mult PushInt Rem Sub Read Write FieldOutOfBounds Fields GetField MkRecord RecordTypeValue RecordValue UnpackRecord App AppCC BindPrims ClosureTypeValue ClosureValue CodeSegment ContTypeValue ContValue DumpEmpty EmptyCont EmptyTypeValue EmptyValue Enter ExceptionTypeValue Exit FunctionSpec GetType Lookup MalformedInstruction MatchError MkClosures MkUserException NonExistentPrimitive PrimTypeValue PrimValue PushEmpty PushMachineException PushType RaiseException Resume ResumeFromDump StackUnderflow TailApp TypeError TypeTypeValue UnboundVariable UnexpectedExit UnexpectedTermination Dup Pop Swap PushString StringTypeValue StringValue UserExceptionValue JArray JFalse JName JNull JNumber JObject JString JTrue App Lam Num Sub Var AddOp App Bind FunType IntType Lam Let Letp Num Opn SubOp Var CArrayType CBlock CEmptyStmt CFunctionDecl CInclude CIntExp CIntType CProgram CReturn CStrType CVarDecl Block EmptyStmt IdnDef IdnUse ModuleDecl MultipleEntity UnknownEntity CAddExp CAndExp CAssignment CDivExp CEqExp CGeExp CGtExp CIdnExp CInitDecl CLeExp CLtExp CModExp CMulExp CNamedType CNeExp CNegExp CNotExp COrExp CSubExp CTypeDef AddExp AndExp Assignment ConstDecl DivExp EqExp GeExp GtExp IdnExp IntExp LeExp LtExp ModExp MulExp NamedType NeExp NegExp NotExp OrExp SubExp TypeDecl VarDecl BuiltinType Constant IntegerValue Module UserType Variable CIfElseStatement CIfStatement CWhileStatement IfStatement WhileStatement Case CaseStatement ForStatement MinMaxCond ValCond CAddrExp CAddrType CCall CDerefExp CStrExp CVoidType Call FPSection ProcDecl ValMode VarMode BuiltinProc Parameter ParamInfo Procedure CFieldExp CIndexExp CRecordType ArrayTypeDef FieldExp FieldIdn FieldList IndexExp RecordTypeDef ArrayType Field RecordType AndExp ArrayVar AssignStmt BoolExp BoolVar Catch EnumConst EnumVar EqualExp ExitStmt ExnConst FieldExp ForStmt GreaterExp IdnExp IfStmt IndexExp IntConst IntExp IntParam IntVar LessExp LoopStmt MinusExp ModExp NegExp NotEqualExp NotExp ObrInt OrExp PlusExp RaiseStmt RecordVar ReturnStmt SlashExp StarExp TryBody TryStmt WhileStmt AddW Beq Bne CmpeqW CmpgtW CmpltW CmpneW Cond DivW Indexed IntDatum Jmp Label LabelDef LdW Local MulW NegW Not Read RemW Ret RISCProg SequenceDatum StW SubW Write AddW Beq Bne CmpeqW CmpgtW CmpltW CmpneW Cond DivW Indexed IntDatum Jmp Label LabelDef LdW Local MulW NegW Not Read RemW Ret SPARC StW SubW Write ArrayType BoolType Constant EnumType EnumTypes ExnType IntType Multiple RecordType RecordTypes Unknown UnknownType Variable Pos Company Dept DU Employee PU AssignStmt Block BooleanLiteral ClassDecl Dot PrimitiveDecl Program UnknownDecl Use VarDecl WhileStmt Fork Leaf ADD ADDI AND ANDI BEQ BGE BGT BLE BLT BNE BR BSR CHKI CMP CMPI Comment DIV DIVI LDB LDW MOD MODI MOV MOVI MUL MULI MVN MVNI OR ORI POP PSH RD RET STB STW SUB SUBI Target WRD WRH WRL XOR XORI Add Assign Decl Div Eq For Id IfElse IfThen Mul Ne Num Program Read Str Sub Var While Write BinExp BinExpR Factor Num Program Var VarDecl InOp Leaf PostOp PreOp Val Equal NotSame Same Leaf One Two Node Tup2 Tup3 Tup4 Tup5 Tup6
productElement
GenSeqTree Leaf ListTree MapTree Pair PairTree QuadTree SetTree TripleTree Unused Leaf Pair Unused Assign Block Empty If Return While For Foreach Add Asgn Div Mul Neg Null Num Seqn Sub Var While Pos And Apply Assign Binding Block BoolVal CallCC Divide Empty Equal ExprStmt Greater GreaterEq If Import IswimProg Lambda Less LessEq Let LetRec LetRecStmt LetStmt Match MatchClause Minus MkRef Negate Not NotEqual NumVal Or Pattern Plus Primitives Remainder Return StringVal ThrowTo Times Tuple Val Variable While BooleanTypeValue Equals FalseValue PushFalse PushTrue Test TrueValue ConversionError ToBoolean ToInt ToString ExnContValue SetHandler Alloc Get Put RefTypeValue RefValue LessThan LessThanOrEqual Add Div DivisionByZero IntTypeValue IntValue Mult PushInt Rem Sub Read Write FieldOutOfBounds Fields GetField MkRecord RecordTypeValue RecordValue UnpackRecord App AppCC BindPrims ClosureTypeValue ClosureValue CodeSegment ContTypeValue ContValue DumpEmpty EmptyCont EmptyTypeValue EmptyValue Enter ExceptionTypeValue Exit FunctionSpec GetType Lookup MalformedInstruction MatchError MkClosures MkUserException NonExistentPrimitive PrimTypeValue PrimValue PushEmpty PushMachineException PushType RaiseException Resume ResumeFromDump StackUnderflow TailApp TypeError TypeTypeValue UnboundVariable UnexpectedExit UnexpectedTermination Dup Pop Swap PushString StringTypeValue StringValue UserExceptionValue JArray JFalse JName JNull JNumber JObject JString JTrue App Lam Num Sub Var AddOp App Bind FunType IntType Lam Let Letp Num Opn SubOp Var CArrayType CBlock CEmptyStmt CFunctionDecl CInclude CIntExp CIntType CProgram CReturn CStrType CVarDecl Block EmptyStmt IdnDef IdnUse ModuleDecl MultipleEntity UnknownEntity CAddExp CAndExp CAssignment CDivExp CEqExp CGeExp CGtExp CIdnExp CInitDecl CLeExp CLtExp CModExp CMulExp CNamedType CNeExp CNegExp CNotExp COrExp CSubExp CTypeDef AddExp AndExp Assignment ConstDecl DivExp EqExp GeExp GtExp IdnExp IntExp LeExp LtExp ModExp MulExp NamedType NeExp NegExp NotExp OrExp SubExp TypeDecl VarDecl BuiltinType Constant IntegerValue Module UserType Variable CIfElseStatement CIfStatement CWhileStatement IfStatement WhileStatement Case CaseStatement ForStatement MinMaxCond ValCond CAddrExp CAddrType CCall CDerefExp CStrExp CVoidType Call FPSection ProcDecl ValMode VarMode BuiltinProc Parameter ParamInfo Procedure CFieldExp CIndexExp CRecordType ArrayTypeDef FieldExp FieldIdn FieldList IndexExp RecordTypeDef ArrayType Field RecordType AndExp ArrayVar AssignStmt BoolExp BoolVar Catch EnumConst EnumVar EqualExp ExitStmt ExnConst FieldExp ForStmt GreaterExp IdnExp IfStmt IndexExp IntConst IntExp IntParam IntVar LessExp LoopStmt MinusExp ModExp NegExp NotEqualExp NotExp ObrInt OrExp PlusExp RaiseStmt RecordVar ReturnStmt SlashExp StarExp TryBody TryStmt WhileStmt AddW Beq Bne CmpeqW CmpgtW CmpltW CmpneW Cond DivW Indexed IntDatum Jmp Label LabelDef LdW Local MulW NegW Not Read RemW Ret RISCProg SequenceDatum StW SubW Write AddW Beq Bne CmpeqW CmpgtW CmpltW CmpneW Cond DivW Indexed IntDatum Jmp Label LabelDef LdW Local MulW NegW Not Read RemW Ret SPARC StW SubW Write ArrayType BoolType Constant EnumType EnumTypes ExnType IntType Multiple RecordType RecordTypes Unknown UnknownType Variable Pos Company Dept DU Employee PU AssignStmt Block BooleanLiteral ClassDecl Dot PrimitiveDecl Program UnknownDecl Use VarDecl WhileStmt Fork Leaf ADD ADDI AND ANDI BEQ BGE BGT BLE BLT BNE BR BSR CHKI CMP CMPI Comment DIV DIVI LDB LDW MOD MODI MOV MOVI MUL MULI MVN MVNI OR ORI POP PSH RD RET STB STW SUB SUBI Target WRD WRH WRL XOR XORI Add Assign Decl Div Eq For Id IfElse IfThen Mul Ne Num Program Read Str Sub Var While Write BinExp BinExpR Factor Num Program Var VarDecl InOp Leaf PostOp PreOp Val Equal NotSame Same Leaf One Two Node Tup2 Tup3 Tup4 Tup5 Tup6
productPrefix
GenSeqTree Leaf ListTree MapTree Pair PairTree QuadTree SetTree TripleTree Unused Leaf Pair Unused Assign Block Empty If Return While For Foreach Add Asgn Div Mul Neg Null Num Seqn Sub Var While Pos And Apply Assign Binding Block BoolVal CallCC Divide Empty Equal ExprStmt Greater GreaterEq If Import IswimProg Lambda Less LessEq Let LetRec LetRecStmt LetStmt Match MatchClause Minus MkRef Negate Not NotEqual NumVal Or Pattern Plus Primitives Remainder Return StringVal ThrowTo Times Tuple Val Variable While BooleanTypeValue Equals FalseValue PushFalse PushTrue Test TrueValue ConversionError ToBoolean ToInt ToString ExnContValue SetHandler Alloc Get Put RefTypeValue RefValue LessThan LessThanOrEqual Add Div DivisionByZero IntTypeValue IntValue Mult PushInt Rem Sub Read Write FieldOutOfBounds Fields GetField MkRecord RecordTypeValue RecordValue UnpackRecord App AppCC BindPrims ClosureTypeValue ClosureValue CodeSegment ContTypeValue ContValue DumpEmpty EmptyCont EmptyTypeValue EmptyValue Enter ExceptionTypeValue Exit FunctionSpec GetType Lookup MalformedInstruction MatchError MkClosures MkUserException NonExistentPrimitive PrimTypeValue PrimValue PushEmpty PushMachineException PushType RaiseException Resume ResumeFromDump StackUnderflow TailApp TypeError TypeTypeValue UnboundVariable UnexpectedExit UnexpectedTermination Dup Pop Swap PushString StringTypeValue StringValue UserExceptionValue JArray JFalse JName JNull JNumber JObject JString JTrue App Lam Num Sub Var AddOp App Bind FunType IntType Lam Let Letp Num Opn SubOp Var CArrayType CBlock CEmptyStmt CFunctionDecl CInclude CIntExp CIntType CProgram CReturn CStrType CVarDecl Block EmptyStmt IdnDef IdnUse ModuleDecl MultipleEntity UnknownEntity CAddExp CAndExp CAssignment CDivExp CEqExp CGeExp CGtExp CIdnExp CInitDecl CLeExp CLtExp CModExp CMulExp CNamedType CNeExp CNegExp CNotExp COrExp CSubExp CTypeDef AddExp AndExp Assignment ConstDecl DivExp EqExp GeExp GtExp IdnExp IntExp LeExp LtExp ModExp MulExp NamedType NeExp NegExp NotExp OrExp SubExp TypeDecl VarDecl BuiltinType Constant IntegerValue Module UserType Variable CIfElseStatement CIfStatement CWhileStatement IfStatement WhileStatement Case CaseStatement ForStatement MinMaxCond ValCond CAddrExp CAddrType CCall CDerefExp CStrExp CVoidType Call FPSection ProcDecl ValMode VarMode BuiltinProc Parameter ParamInfo Procedure CFieldExp CIndexExp CRecordType ArrayTypeDef FieldExp FieldIdn FieldList IndexExp RecordTypeDef ArrayType Field RecordType AndExp ArrayVar AssignStmt BoolExp BoolVar Catch EnumConst EnumVar EqualExp ExitStmt ExnConst FieldExp ForStmt GreaterExp IdnExp IfStmt IndexExp IntConst IntExp IntParam IntVar LessExp LoopStmt MinusExp ModExp NegExp NotEqualExp NotExp ObrInt OrExp PlusExp RaiseStmt RecordVar ReturnStmt SlashExp StarExp TryBody TryStmt WhileStmt AddW Beq Bne CmpeqW CmpgtW CmpltW CmpneW Cond DivW Indexed IntDatum Jmp Label LabelDef LdW Local MulW NegW Not Read RemW Ret RISCProg SequenceDatum StW SubW Write AddW Beq Bne CmpeqW CmpgtW CmpltW CmpneW Cond DivW Indexed IntDatum Jmp Label LabelDef LdW Local MulW NegW Not Read RemW Ret SPARC StW SubW Write ArrayType BoolType Constant EnumType EnumTypes ExnType IntType Multiple RecordType RecordTypes Unknown UnknownType Variable Pos Company Dept DU Employee PU AssignStmt Block BooleanLiteral ClassDecl Dot PrimitiveDecl Program UnknownDecl Use VarDecl WhileStmt Fork Leaf ADD ADDI AND ANDI BEQ BGE BGT BLE BLT BNE BR BSR CHKI CMP CMPI Comment DIV DIVI LDB LDW MOD MODI MOV MOVI MUL MULI MVN MVNI OR ORI POP PSH RD RET STB STW SUB SUBI Target WRD WRH WRL XOR XORI Add Assign Decl Div Eq For Id IfElse IfThen Mul Ne Num Program Read Str Sub Var While Write BinExp BinExpR Factor Num Program Var VarDecl InOp Leaf PostOp PreOp Val Equal NotSame Same Leaf One Two Node Tup2 Tup3 Tup4 Tup5 Tup6
prog
DataflowForTests DataflowTests
program
SyntaxAnalysis AbstractSyntax Parser AST TIL1_1 AST Parser
prompt
Imperative Lambda Lambda GeneratingREPL
ps
CCall
Pseudo
RISCISA
PSH
RISCISA
pt
PositionalRewriterTests
PU
Company
PushEmpty
SECDBase
PushFalse
BooleanOps
PushInt
IntegerOps
PushMachineException
SECDBase
PushString
StringOps
PushTrue
BooleanOps
PushType
SECDBase
Put
HeapOps
PVal
PrettyPrinterTests