Skip to content

Latest commit

 

History

History
169 lines (166 loc) · 5.32 KB

lambda.md

File metadata and controls

169 lines (166 loc) · 5.32 KB

lambda

Plain lambda structures generated by lambda conversion.

flowchart TD
LamMacroTable --entries--> entries
LamMacroArgsTable --entries--> entries
LamInfoTable --entries--> entries
LamAliasTable --entries--> entries
LamExpTable --entries--> entries
LamLam --args--> LamVarList
LamLam --exp--> LamExp
LamVarList --var--> HashSymbol
LamVarList --next--> LamVarList
LamPrimApp --type--> LamPrimOp
LamPrimApp --exp1--> LamExp
LamPrimApp --exp2--> LamExp
LamSequence --exp--> LamExp
LamSequence --next--> LamSequence
LamList --exp--> LamExp
LamList --next--> LamList
LamApply --function--> LamExp
LamApply --args--> LamList
LamLookup --nsid--> int
LamLookup --nsSymbol--> HashSymbol
LamLookup --exp--> LamExp
LamLookupSymbol --nsid--> int
LamLookupSymbol --nsSymbol--> HashSymbol
LamLookupSymbol --symbol--> HashSymbol
LamConstant --name--> HashSymbol
LamConstant --tag--> int
LamConstruct --name--> HashSymbol
LamConstruct --tag--> int
LamConstruct --args--> LamList
LamDeconstruct --name--> HashSymbol
LamDeconstruct --nsid--> int
LamDeconstruct --vec--> int
LamDeconstruct --exp--> LamExp
LamTupleIndex --vec--> int
LamTupleIndex --size--> int
LamTupleIndex --exp--> LamExp
LamMakeVec --nargs--> int
LamMakeVec --args--> LamList
LamIff --condition--> LamExp
LamIff --consequent--> LamExp
LamIff --alternative--> LamExp
LamCond --value--> LamExp
LamCond --cases--> LamCondCases
LamIntCondCases --constant--> MaybeBigInt
LamIntCondCases --body--> LamExp
LamIntCondCases --next--> LamIntCondCases
LamCharCondCases --constant--> character
LamCharCondCases --body--> LamExp
LamCharCondCases --next--> LamCharCondCases
LamMatch --index--> LamExp
LamMatch --cases--> LamMatchList
LamMatchList --matches--> LamIntList
LamMatchList --body--> LamExp
LamMatchList --next--> LamMatchList
LamIntList --item--> int
LamIntList --name--> HashSymbol
LamIntList --nsid--> int
LamIntList --next--> LamIntList
LamLet --var--> HashSymbol
LamLet --value--> LamExp
LamLet --body--> LamExp
LamLetRec --nbindings--> int
LamLetRec --bindings--> LamLetRecBindings
LamLetRec --body--> LamExp
LamLetRecBindings --var--> HashSymbol
LamLetRecBindings --val--> LamExp
LamLetRecBindings --next--> LamLetRecBindings
LamContext --frame--> LamInfoTable
LamContext --aliases--> LamAliasTable
LamContext --macros--> LamMacroTable
LamContext --parent--> LamContext
LamAmb --left--> LamExp
LamAmb --right--> LamExp
LamPrint --exp--> LamExp
LamPrint --printer--> LamExp
LamTypeDefs --typeDefs--> LamTypeDefList
LamTypeDefs --body--> LamExp
LamTypeDefList --typeDef--> LamTypeDef
LamTypeDefList --next--> LamTypeDefList
LamTypeDef --type--> LamType
LamTypeDef --constructors--> LamTypeConstructorList
LamTypeConstructorList --constructor--> LamTypeConstructor
LamTypeConstructorList --next--> LamTypeConstructorList
LamType --name--> HashSymbol
LamType --args--> LamTypeArgs
LamTypeTags --tag--> HashSymbol
LamTypeTags --next--> LamTypeTags
LamTypeArgs --name--> HashSymbol
LamTypeArgs --next--> LamTypeArgs
LamTypeConstructor --name--> HashSymbol
LamTypeConstructor --type--> LamType
LamTypeConstructor --args--> LamTypeConstructorArgs
LamTypeConstructorArgs --arg--> LamTypeConstructorType
LamTypeConstructorArgs --next--> LamTypeConstructorArgs
LamTypeFunction --name--> LamLookupOrSymbol
LamTypeFunction --args--> LamTypeConstructorArgs
LamTypeConstructorInfo --name--> HashSymbol
LamTypeConstructorInfo --nsid--> int
LamTypeConstructorInfo --type--> LamTypeConstructor
LamTypeConstructorInfo --tags--> LamTypeTags
LamTypeConstructorInfo --needsVec--> bool
LamTypeConstructorInfo --arity--> int
LamTypeConstructorInfo --size--> int
LamTypeConstructorInfo --index--> int
LamExp --namespaces--> LamNamespaceArray
LamExp --lam--> LamLam
LamExp --var--> HashSymbol
LamExp --stdint--> int
LamExp --biginteger--> MaybeBigInt
LamExp --prim--> LamPrimApp
LamExp --list--> LamSequence
LamExp --makeVec--> LamMakeVec
LamExp --construct--> LamConstruct
LamExp --deconstruct--> LamDeconstruct
LamExp --tuple_index--> LamTupleIndex
LamExp --tuple--> LamList
LamExp --make_tuple--> LamList
LamExp --tag--> LamExp
LamExp --constant--> LamConstant
LamExp --apply--> LamApply
LamExp --iff--> LamIff
LamExp --callcc--> LamExp
LamExp --letrec--> LamLetRec
LamExp --typedefs--> LamTypeDefs
LamExp --let--> LamLet
LamExp --match--> LamMatch
LamExp --cond--> LamCond
LamExp --amb--> LamAmb
LamExp --print--> LamPrint
LamExp --character--> character
LamExp --back--> void_ptr
LamExp --error--> void_ptr
LamExp --cond_default--> void_ptr
LamExp --env--> void_ptr
LamExp --lookup--> LamLookup
LamExp --constructor--> LamTypeConstructorInfo
LamLookupOrSymbol --symbol--> HashSymbol
LamLookupOrSymbol --lookup--> LamLookupSymbol
LamCondCases --integers--> LamIntCondCases
LamCondCases --characters--> LamCharCondCases
LamTypeConstructorType --integer--> void_ptr
LamTypeConstructorType --character--> void_ptr
LamTypeConstructorType --var--> HashSymbol
LamTypeConstructorType --function--> LamTypeFunction
LamTypeConstructorType --tuple--> LamTypeConstructorArgs
LamInfo --typeConstructorInfo--> LamTypeConstructorInfo
LamInfo --namespaceInfo--> LamContext
LamInfo --nsid--> int
LamPrimOp["enum LamPrimOp"]
LamNamespaceArray["LamNamespaceArray[]"] --entries--> LamExp
LamExpVal
LamExpType
LamLookupOrSymbolVal
LamLookupOrSymbolType
LamCondCasesVal
LamCondCasesType
LamTypeConstructorTypeVal
LamTypeConstructorTypeType
LamInfoVal
LamInfoType
Loading

Generated from src/lambda.yaml by tools/makeAST.py