(CommandList children: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} { (BracedVarSub token: <VSub_Name EVALUATOR_SH> suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(true)}) spids: [9 13] ) } {(Lit_Other ']')} ) (ControlFlow token:<ControlFlow_Return return>) ] ) (Assignment keyword: Assign_Declare flags: [-g] pairs: [(assign_pair lhs:(LhsName name:EVALUATOR_SH) op:Equal rhs:{(true)} spids:[25])] spids: [21] ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [31 36] ) (/common.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [41 46] ) (/variables.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [51 56] ) (/callable.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [61 66] ) (/specialforms.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [71 76] ) (/specialforms.lambda.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [81 86] ) (/environment.sh) } ) (C {(.)} { (BracedVarSub token: <VSub_Name BASH_SOURCE> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ('*')}) spids: [91 96] ) (/evaluator.functions.builtin.sh) } ) (Assignment keyword: Assign_Declare flags: [-g] pairs: [(assign_pair lhs:(LhsName name:EVALUATOR_DEBUG) op:Equal rhs:{(0)} spids:[104])] spids: [100] ) (FuncDef name: 'evaluator::eval' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ('evaluator::eval ') (${ VSub_At '@'))}) terminator: <Op_Semi ';'> ) ] spids: [16777215 157] ) ] spids: [16777215 170] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:envToken) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [176] ) ] spids: [174] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:exprToken) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [186] ) ] spids: [184] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (type) (Lit_Other ':') (Lit_Other ':') (instanceOf) } {(DQ (${ VSub_Name exprToken))} {(Atom)} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (clone)} {(DQ (${ VSub_Name exprToken))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [229] ) ] spids: [229] ) (ControlFlow token:<ControlFlow_Return return>) ] spids: [16777215 214] ) (if_arm cond: [ (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (type) (Lit_Other ':') (Lit_Other ':') (instanceOf) } {(DQ (${ VSub_Name exprToken))} {(Callable)} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (clone)} {(DQ (${ VSub_Name exprToken))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [274] ) ] spids: [274] ) (ControlFlow token:<ControlFlow_Return return>) ] spids: [240 259] ) (if_arm cond: [ (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (type) (Lit_Other ':') (Lit_Other ':') (instanceOf) } {(DQ (${ VSub_Name exprToken))} {(Identifier)} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(environment) (Lit_Other ':') (Lit_Other ':') (getValue)} {(DQ (${ VSub_Name envToken))} {(DQ (${ VSub_Name exprToken))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [325] ) ] spids: [325] ) (ControlFlow token:<ControlFlow_Return return>) ] spids: [285 304] ) (if_arm cond: [ (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (type) (Lit_Other ':') (Lit_Other ':') (instanceOf) } {(DQ (${ VSub_Name exprToken))} {(LinkedList)} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval_list)} {(DQ (${ VSub_At '@'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [370] ) ] spids: [370] ) (ControlFlow token:<ControlFlow_Return return>) ] spids: [336 355] ) ] else_action: [ (C {(stderr)} { (DQ ('evaluator::eval / Unhandled type for token [') ($ VSub_Name '$exprToken') (']') ) } ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (printMetadata)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [381 405] ) (C {(stderr)} {(DQ ('should never get here'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [139] ) spids: [130 138] ) (FuncDef name: 'evaluator::evalFromLinkedList' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ('evaluator::eval ') (${ VSub_At '@'))}) terminator: <Op_Semi ';'> ) ] spids: [16777215 449] ) ] spids: [16777215 462] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:envToken) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [468] ) ] spids: [466] ) (Sentence child: (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:expressions) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [478] ) ] spids: [476] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs:(LhsName name:currentSexp) op:Equal spids:[497]) (assign_pair lhs:(LhsName name:currentResult) op:Equal spids:[499]) ] spids: [495] ) (While cond: [ (Sentence child: (Pipeline children: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (isEmpty_c) } {(DQ (${ VSub_Name expressions))} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (first) } {(DQ (${ VSub_Name expressions))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:currentSexp) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [541] ) ] spids: [541] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (rest) } {(DQ (${ VSub_Name expressions))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:expressions) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [563] ) ] spids: [563] ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {($ VSub_Name '$envToken')} {($ VSub_Name '$currentSexp')} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:currentResult) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [579] ) ] spids: [579] ) ] spids: [522 585] ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name currentResult))} spids: [588] ) ] spids: [588] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [431] ) spids: [422 430] ) (FuncDef name: 'evaluator::eval_list' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ('evaluator::eval_list ') (${ VSub_At '@'))}) terminator: <Op_Semi ';'> ) ] spids: [16777215 630] ) ] spids: [16777215 643] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:envToken) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [649] ) ] spids: [647] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:listToken) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [659] ) ] spids: [657] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (type) (Lit_Other ':') (Lit_Other ':') (instanceOf) } {($ VSub_Name '$listToken')} {(LinkedList)} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {(stderr)} {(DQ ('evaluator::eval_list / must be a list'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 685] ) ] spids: [16777215 700] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (length) } {(DQ (${ VSub_Name listToken))} ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_eq left: {(DQ (${ VSub_Name RESULT))} right: {(0)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(Nil)} {(DQ )}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [751] ) ] spids: [751] ) (ControlFlow token:<ControlFlow_Return return>) ] spids: [16777215 736] ) ] spids: [16777215 762] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (first) } {(DQ (${ VSub_Name listToken))} ) (Sentence child: (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name envToken))} {(DQ (${ VSub_Name RESULT))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:headItem) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [802] ) ] spids: [800] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (type)} {(DQ (${ VSub_Name headItem))}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:headType) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [825] ) ] spids: [823] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (value)} {(DQ (${ VSub_Name headItem))}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:headValue) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [848] ) ] spids: [846] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (rest) } {($ VSub_Name '$listToken')} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:rest) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [880] ) ] spids: [878] ) (Case to_match: {(DQ (${ VSub_Name headType))} arms: [ (case_arm pat_list: [{(BuiltinFunction)}] action: [ (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (call_builtinFunction)} {(DQ (${ VSub_Name envToken))} {(DQ (${ VSub_Name headItem))} {(DQ (${ VSub_Name rest))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [928] ) ] spids: [928] ) ] spids: [900 901 936 16777215] ) (case_arm pat_list: [{(BuiltinMacro)}] action: [ (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (call_builtinMacro)} {(DQ (${ VSub_Name envToken))} {(DQ (${ VSub_Name headItem))} {(DQ (${ VSub_Name rest))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [970] ) ] spids: [970] ) ] spids: [939 940 978 16777215] ) (case_arm pat_list: [{(SpecialForm)}] action: [ (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (call_specialForm)} {(DQ (${ VSub_Name envToken))} {(DQ (${ VSub_Name headItem))} {(DQ (${ VSub_Name rest))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1012] ) ] spids: [1012] ) ] spids: [981 982 1020 16777215] ) (case_arm pat_list: [{(Lambda)}] action: [ (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (call_lambda)} {(DQ (${ VSub_Name envToken))} {(DQ (${ VSub_Name headItem))} {(DQ (${ VSub_Name rest))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1051] ) ] spids: [1051] ) ] spids: [1023 1024 1059 16777215] ) (case_arm pat_list: [{(Macro)}] action: [ (C {(stderr)} { (DQ ( 'evaluator::eval_list / evaluator::eval_list <macro> not implemented yet' ) ) } ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [1062 1063 1078 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(stderr)} { (DQ ('evaluator::eval_list / type [') (${ VSub_Name headType) ('] not valid')) } ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [1081 1082 1101 16777215] ) ] spids: [889 897 1104] ) ] spids: [612] ) spids: [603 611] ) (FuncDef name: 'evaluator::call_builtinFunction' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} { (DQ ('evaluator::call_builtinFunction(') (BracedVarSub token: <VSub_At '@'> prefix_op: VSub_Pound spids: [1143 1146] ) (') ') (${ VSub_At '@') ) } ) terminator: <Op_Semi ';'> ) ] spids: [16777215 1137] ) ] spids: [16777215 1155] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [1161] ) ] spids: [1159] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:functionToken) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [1171] ) ] spids: [1169] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:argsToken) op: Equal rhs: {(DQ (${ VSub_Number 3))} spids: [1181] ) ] spids: [1179] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (value)} {(DQ (${ VSub_Name functionToken))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:functionName) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1205] ) ] spids: [1203] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [(C {(functionExists)} {($ VSub_Name '$functionName')})] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {(stderr)} { (DQ ('The builtin function [') (${ VSub_Name functionName) ('] does not exist')) } ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 1222] ) ] spids: [16777215 1241] ) (C {(eval)} {(DQ (${ VSub_Name functionName))} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name functionName))} {(DQ (${ VSub_Name argsToken))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {($ VSub_Name '$RESULT')} spids: [1271] ) ] spids: [1271] ) ] spids: [1119] ) spids: [1110 1118] ) (FuncDef name: 'evaluator::call_lambda' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ('evaluator::call_lambda ') (${ VSub_At '@'))}) terminator: <Op_Semi ';'> ) ] spids: [16777215 1304] ) ] spids: [16777215 1317] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [1323] ) ] spids: [1321] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:lambdaToken) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [1333] ) ] spids: [1331] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:argsToken) op: Equal rhs: {(DQ (${ VSub_Number 3))} spids: [1343] ) ] spids: [1341] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new) } ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:passedArgs) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1364] ) ] spids: [1362] ) (While cond: [ (Sentence child: (Pipeline children: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (isEmpty_c) } {(DQ (${ VSub_Name argsToken))} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (first) } {(DQ (${ VSub_Name argsToken))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name RESULT))} ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (append) } {($ VSub_Name '$passedArgs')} {(DQ (${ VSub_Name RESULT))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (rest) } {(DQ (${ VSub_Name argsToken))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:argsToken) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1460] ) ] spids: [1460] ) ] spids: [1392 1468] ) ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (Lambda) (Lit_Other ':') (Lit_Other ':') (call)} {($ VSub_Name '$lambdaToken')} {($ VSub_Name '$passedArgs')} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1485] ) ] spids: [1485] ) ] spids: [1286] ) spids: [1277 1285] ) (FuncDef name: 'evaluator::call_builtinMacro' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ('evaluator::call_builtinMacro ') (${ VSub_At '@'))}) terminator: <Op_Semi ';'> ) ] spids: [16777215 1522] ) ] spids: [16777215 1535] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (set)} {(${ VSub_Name EVALUATOR_VARIABLE)} {(nil)} {(nil)} ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [1556] ) ] spids: [1554] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:identifier) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [1566] ) ] spids: [1564] ) (Assignment keyword: Assign_Declare flags: [-a] pairs: [ (assign_pair lhs: (LhsName name:values) op: Equal rhs: {(ArrayLiteralPart words:[{(${ VSub_Number 3)}])} spids: [1578] ) ] spids: [1574] ) (Case to_match: {(DQ (${ VSub_Name identifier))} arms: [ (case_arm pat_list: [{(DQ (if))}] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} {(DQ ("evaluator::call_identifier in 'if'"))}) terminator: <Op_Semi ';'> ) ] spids: [16777215 1619] ) ] spids: [16777215 1629] ) (C {(stderr)} {(DQ ('[if] not implemented yet'))}) ] spids: [1599 1601 1639 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(stderr)} { (DQ ('evaluator::call_identifier / Not implemented [') (${ VSub_Name identifier) (']') ) } ) ] spids: [1642 1643 1657 16777215] ) ] spids: [1587 1595 1660] ) ] spids: [1504] ) spids: [1495 1503] ) (FuncDef name: 'evaluator::call_specialForm' body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(${ VSub_Name EVALUATOR_DEBUG)} right: {(1)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Sentence child: (C {(stderr)} { (DQ ('evaluator::call_specialForm(') (BracedVarSub token: <VSub_At '@'> prefix_op: VSub_Pound spids: [1698 1701] ) (') ') (${ VSub_At '@') ) } ) terminator: <Op_Semi ';'> ) ] spids: [16777215 1692] ) ] spids: [16777215 1710] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [1716] ) ] spids: [1714] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:functionToken) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [1726] ) ] spids: [1724] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:argsToken) op: Equal rhs: {(DQ (${ VSub_Number 3))} spids: [1736] ) ] spids: [1734] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (value)} {(DQ (${ VSub_Name functionToken))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:functionName) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1760] ) ] spids: [1758] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [(C {(functionExists)} {($ VSub_Name '$functionName')})] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {(stderr)} { (DQ ('The builtin function [') (${ VSub_Name functionName) ('] does not exist')) } ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 1777] ) ] spids: [16777215 1796] ) (C {(eval)} {(DQ (${ VSub_Name functionName))} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name functionName))} {(DQ (${ VSub_Name argsToken))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RESULT) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1826] ) ] spids: [1826] ) ] spids: [1674] ) spids: [1665 1673] ) (FuncDef name: 'evaluator::setup_builtin' body: (BraceGroup children: [ (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [1851] ) ] spids: [1849] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:type) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [1861] ) ] spids: [1859] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:identifier) op: Equal rhs: {(DQ (${ VSub_Number 3))} spids: [1871] ) ] spids: [1869] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:functionName) op: Equal rhs: {(DQ (${ VSub_Number 4))} spids: [1881] ) ] spids: [1879] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(DQ (${ VSub_Name type))} {(DQ (${ VSub_Name functionName))} ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:t1) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1910] ) ] spids: [1908] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(String)} {(DQ (${ VSub_Name identifier))} ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:t2) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [1935] ) ] spids: [1933] ) (C {(environment) (Lit_Other ':') (Lit_Other ':') (setVariable)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name t2))} {(DQ (${ VSub_Name t1))} ) ] spids: [1846] ) spids: [1837 1845] ) (FuncDef name: 'evaluator::setup_builtins' body: (BraceGroup children: [ (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [1984] ) ] spids: [1982] ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('+'))} {(DQ ('evaluator::functions::builtin::add'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ (-))} {(DQ ('evaluator::functions::builtin::subtract'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('*'))} {(DQ ('evaluator::functions::builtin::multiply'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ (/))} {(DQ ('evaluator::functions::builtin::divide'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('='))} {(DQ ('evaluator::functions::builtin::equals'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('<'))} {(DQ ('evaluator::functions::builtin::lessthan'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('>'))} {(DQ ('evaluator::functions::builtin::greaterthan'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('<='))} {(DQ ('evaluator::functions::builtin::lessthanorequal'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(BuiltinFunction)} {(DQ ('>='))} {(DQ ('evaluator::functions::builtin::greaterthanorequal'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(SpecialForm)} {(DQ (if))} {(DQ ('evaluator::specialforms::if'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(SpecialForm)} {(DQ (lambda))} {(DQ ('evaluator::specialforms::lambda'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(SpecialForm)} {(DQ (let))} {(DQ ('evaluator::specialforms::let'))} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtin)} {(DQ (${ VSub_Name env))} {(SpecialForm)} {(SQ <'let*'>)} {(DQ ('evaluator::specialforms::letstar'))} ) (C {(environment) (Lit_Other ':') (Lit_Other ':') (pushScope)} {(DQ (${ VSub_Name env))}) ] spids: [1979] ) spids: [1970 1978] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Number '$0')} {(KW_Bang '!') (Lit_Other '=')} {($ VSub_Name '$BASH_SOURCE')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(ControlFlow token:<ControlFlow_Return return>)] spids: [16777215 2315] ) ] spids: [16777215 2320] ) (FuncDef name: createTestEnv body: (BraceGroup children: [ (C {(environment) (Lit_Other ':') (Lit_Other ':') (new)}) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (setup_builtins)} {(DQ (${ VSub_Name RESULT))} ) ] spids: [2329] ) spids: [2323 2328] ) (FuncDef name: setInEnv body: (BraceGroup children: [ (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [2362] ) ] spids: [2360] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:name) op: Equal rhs: {(DQ (${ VSub_Number 2))} spids: [2372] ) ] spids: [2370] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:type) op: Equal rhs: {(DQ (${ VSub_Number 3))} spids: [2382] ) ] spids: [2380] ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(DQ (${ VSub_Number 4))} spids: [2392] ) ] spids: [2390] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(Identifier)} {(DQ (${ VSub_Name name))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:nameToken) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2417] ) ] spids: [2415] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(DQ (${ VSub_Name type))} {(DQ (${ VSub_Name value))} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:valueToken) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2446] ) ] spids: [2444] ) (C {(environment) (Lit_Other ':') (Lit_Other ':') (setVariable)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name nameToken))} {(DQ (${ VSub_Name valueToken))} ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(Identifier)} {(DQ (${ VSub_Name name))} ) ] spids: [2357] ) spids: [2351 2356] ) (FuncDef name: appendToList body: (BraceGroup children: [ (Assignment keyword: Assign_Declare pairs: [ (assign_pair lhs: (LhsName name:listToken) op: Equal rhs: {(DQ (${ VSub_Number 1))} spids: [2505] ) ] spids: [2503] ) (Assignment keyword: Assign_Declare flags: [-a] pairs: [ (assign_pair lhs: (LhsName name:items) op: Equal rhs: { (ArrayLiteralPart words: [ { (DQ (BracedVarSub token: <VSub_At '@'> suffix_op: (Slice begin:(ArithWord w:{(Lit_Digits 2)})) spids: [2520 2524] ) ) } ] ) } spids: [2517] ) ] spids: [2513] ) (Assignment keyword: Assign_Declare flags: [-i] pairs: [(assign_pair lhs:(LhsName name:size) op:Equal spids:[2533])] spids: [2529] ) (Assignment keyword: Assign_Declare flags: [-i] pairs: [(assign_pair lhs:(LhsName name:max_index) op:Equal spids:[2540])] spids: [2536] ) (Assignment keyword: Assign_Declare pairs: [(assign_pair lhs:(LhsName name:currentType) op:Equal spids:[2545])] spids: [2543] ) (Assignment keyword: Assign_Declare pairs: [(assign_pair lhs:(LhsName name:currentValue) op:Equal spids:[2550])] spids: [2548] ) (DParen child: (ArithBinary op_id: Arith_Comma left: (BinaryAssign op_id: Arith_Equal left: (LhsName name:size) right: (ArithWord w: { (BracedVarSub token: <VSub_Name items> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [2559 2565] ) } ) ) right: (BinaryAssign op_id: Arith_Equal left: (LhsName name:max_index) right: (ArithBinary op_id: Arith_Minus left: (ArithVarRef name:size) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithBinary op_id: Arith_Percent left: (ArithVarRef name:size) right: (ArithWord w:{(Lit_Digits 2)}) ) right: (ArithWord w:{(Lit_Digits 0)}) ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(stderr)} {(DQ ('appendToList: number of items to add to list not even'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 2594] ) ] spids: [16777215 2609] ) (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithWord w:{(Lit_Digits 0)}) ) cond: (ArithBinary op_id: Arith_LessEqual left: (ArithVarRef name:i) right: (ArithVarRef name:max_index) ) update: (BinaryAssign op_id: Arith_Equal left: (LhsName name:i) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:i) right: (ArithWord w:{(Lit_Digits 2)}) ) ) body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:currentType) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name items> bracket_op: (ArrayIndex expr:(ArithWord w:{(${ VSub_Name i)})) spids: [2639 2646] ) ) } spids: [2637] ) ] spids: [2637] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:currentValue) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name items> bracket_op: (ArrayIndex expr: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:i) right: (ArithWord w:{(Lit_Digits 1)}) ) ) spids: [2652 2663] ) ) } spids: [2650] ) ] spids: [2650] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(DQ (${ VSub_Name currentType))} {(DQ (${ VSub_Name currentValue))} ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (append) } {(DQ (${ VSub_Name listToken))} {(DQ (${ VSub_Name RESULT))} ) ] spids: [2634 2706] ) ) ] spids: [2500] ) spids: [2494 2499] ) (Assignment keyword: Assign_Declare pairs: [(assign_pair lhs:(LhsName name:env) op:Equal spids:[2714])] spids: [2712] ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2724] ) ] spids: [2724] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(Boolean)} {(true)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:valueToken) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2742] ) ] spids: [2742] ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$valueToken')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Boolean :: true'))} {(DQ (${ VSub_Name RESULT))} {(DQ (atom/boolean))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2810] ) ] spids: [2810] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(v)} {(Integer)} {(4)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2833] ) ] spids: [2833] ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name token))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 4'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('identifier evaluation'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2901] ) ] spids: [2901] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2918] ) ] spids: [2918] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'+'>)} {(Integer)} {(5)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$vCode')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 7'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(+ 5 2)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [2998] ) ] spids: [2998] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3015] ) ] spids: [3015] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <->)} {(Integer)} {(5)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$vCode')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 3'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(- 5 2)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3095] ) ] spids: [3095] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3112] ) ] spids: [3112] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'*'>)} {(Integer)} {(5)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$vCode')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 10'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(* 5 2)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3192] ) ] spids: [3192] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3209] ) ] spids: [3209] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ </>)} {(Integer)} {(6)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$vCode')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 3'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(/ 6 2)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3289] ) ] spids: [3289] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3306] ) ] spids: [3306] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'='>)} {(Integer)} {(2)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$vCode')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Boolean :: true'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(= 2 2)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3386] ) ] spids: [3386] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3403] ) ] spids: [3403] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'='>)} {(Integer)} {(2)} {(Integer)} {(3)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {($ VSub_Name '$vCode')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Boolean :: false'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(= 2 3)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3489] ) ] spids: [3489] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(u)} {(Integer)} {(4)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3512] ) ] spids: [3512] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(v)} {(Integer)} {(4)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3535] ) ] spids: [3535] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(w)} {(Integer)} {(2)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [3558] ) ] spids: [3558] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [3578] ) ] spids: [3578] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'+'>)} {(Identifier)} {(SQ <v>)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 6'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(+ <v=4> 2)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [3667] ) ] spids: [3667] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'+'>)} {(Integer)} {(2)} {(Identifier)} {(SQ <v>)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 6'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(+ 2 <v=4>)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [3756] ) ] spids: [3756] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <->)} {(Identifier)} {(SQ <v>)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 2'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(- <v=4> 2)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [3845] ) ] spids: [3845] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <->)} {(Integer)} {(2)} {(Identifier)} {(SQ <v>)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: -2'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(- 2 <v=4>)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [3934] ) ] spids: [3934] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'*'>)} {(Identifier)} {(SQ <v>)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 8'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(* <v=4> 2)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4023] ) ] spids: [4023] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'*'>)} {(Integer)} {(2)} {(Identifier)} {(SQ <v>)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 8'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(* 2 <v=4>)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4112] ) ] spids: [4112] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ </>)} {(Identifier)} {(SQ <v>)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 2'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(/ <v=4> 2)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4201] ) ] spids: [4201] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ </>)} {(Integer)} {(12)} {(Identifier)} {(SQ <v>)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 3'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(/ 12 <v=4>)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4290] ) ] spids: [4290] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'='>)} {(Identifier)} {(SQ <v>)} {(Integer)} {(2)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Boolean :: false'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(= <v=4> 2)'))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4379] ) ] spids: [4379] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'='>)} {(Integer)} {(4)} {(Identifier)} {(SQ <v>)} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Boolean :: true'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(= 4 <v=4>)'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:env) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4469] ) ] spids: [4469] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(u)} {(Integer)} {(4)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4492] ) ] spids: [4492] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(v)} {(Integer)} {(4)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4515] ) ] spids: [4515] ) (Sentence child: (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(w)} {(Integer)} {(2)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4538] ) ] spids: [4538] ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:slistOne) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4555] ) ] spids: [4555] ) (C {(appendToList)} {($ VSub_Name '$slistOne')} {(Identifier)} {(Lit_Other '+')} {(Integer)} {(4)} {(Identifier)} {(v)} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:slistTwo) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4585] ) ] spids: [4585] ) (C {(appendToList)} {($ VSub_Name '$slistTwo')} {(Identifier)} {(-)} {(Integer)} {(4)} {(Identifier)} {(w)} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4615] ) ] spids: [4615] ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(SQ <'*'>)}) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (append)} {($ VSub_Name '$vCode')} {($ VSub_Name '$slistTwo')} ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (append)} {($ VSub_Name '$vCode')} {($ VSub_Name '$slistOne')} ) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 16'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('(* (+ 4 <v=4>) (- 4 <w=2>))'))} ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lambdaEnv) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4719] ) ] spids: [4719] ) (C {(setInEnv)} {($ VSub_Name '$lambdaEnv')} {(DQ (y))} {(Integer)} {(10)}) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lambdaArgs) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4748] ) ] spids: [4748] ) (C {(appendToList)} {($ VSub_Name '$lambdaArgs')} {(Identifier)} {(DQ (x))}) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lambdaExpression) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4775] ) ] spids: [4775] ) (C {(appendToList)} {($ VSub_Name '$lambdaExpression')} {(Identifier)} {(SQ <'*'>)} {(Identifier)} {(DQ (x))} {(Identifier)} {(DQ (y))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (new)} ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lambdaCode) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4814] ) ] spids: [4814] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (append)} {($ VSub_Name '$lambdaCode')} {($ VSub_Name '$lambdaExpression')} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (Lambda) (Lit_Other ':') (Lit_Other ':') (new)} { (DQ ($ VSub_Name '$lambdaEnv') (' ') ($ VSub_Name '$lambdaArgs') (' ') ($ VSub_Name '$lambdaCode') ) } ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:lambda) op: Equal rhs: {(DQ (${ VSub_Name RESULT))} spids: [4851] ) ] spids: [4851] ) (Sentence child:(C {(createTestEnv)}) terminator:<Op_Semi ';'>) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:env) op:Equal rhs:{(${ VSub_Name RESULT)} spids:[4863])] spids: [4863] ) (C {(setInEnv)} {(DQ (${ VSub_Name env))} {(DQ (a))} {(Integer)} {(5)}) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (new)} {(LinkedList)}) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vCode) op: Equal rhs: {(${ VSub_Name RESULT)} spids: [4894] ) ] spids: [4894] ) (C {(variable) (Lit_Other ':') (Lit_Other ':') (LinkedList) (Lit_Other ':') (Lit_Other ':') (append)} {($ VSub_Name '$vCode')} {($ VSub_Name '$lambda')} ) (C {(appendToList)} {($ VSub_Name '$vCode')} {(Identifier)} {(DQ (a))}) (C {(evaluator) (Lit_Other ':') (Lit_Other ':') (eval)} {(DQ (${ VSub_Name env))} {(DQ (${ VSub_Name vCode))} ) (Sentence child: (C {(variable) (Lit_Other ':') (Lit_Other ':') (debug)} {(DQ (${ VSub_Name RESULT))}) terminator: <Op_Semi ';'> ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (equals)} {(DQ ('Integer :: 50'))} {(DQ (${ VSub_Name RESULT))} {(DQ ('env(a=5) ((lambda[env(y=10)] (x) (* y x)) a)'))} ) (C {(assert) (Lit_Other ':') (Lit_Other ':') (report)}) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id:VTest_Plus arg_word:{(isset)}) spids: [4991 4995] ) } {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(DQ ($ VSub_Number '$1'))} {(Lit_Other '=') (Lit_Other '=')} {(DQ (debug))} {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [(C {(variable) (Lit_Other ':') (Lit_Other ':') (printMetadata)})] spids: [16777215 5017] ) ] spids: [16777215 5026] ) ] )