Przeglądaj źródła

Updated tests which failed due to the update

Yentl Van Tendeloo 8 lat temu
rodzic
commit
c643bc6444

Plik diff jest za duży
+ 0 - 132132
bootstrap/bootstrap.m


+ 0 - 68
bootstrap/minimal.m

@@ -1789,71 +1789,3 @@ Node _name_deserialize("deserialize")
 Edge _primitives_name_deserialize(_primitives_deserialize, _name_deserialize)
 Node _body_deserialize("body")
 Edge _signature_body_deserialize(_func_signature_deserialize, _func_body_deserialize)
-Edge _signature_body_str_deserialize(_signature_body_deserialize, _body_deserialize)
-Node _params_deserialize("params")
-Edge _signature_params_deserialize(_func_signature_deserialize, _func_params_deserialize)
-Edge _signature_params_str_deserialize(_signature_params_deserialize, _params_deserialize)
-Node _func_params_deserialize_a()
-Node _name_deserialize_a("a")
-Edge _param_link_deserialize_a(_func_params_deserialize, _func_params_deserialize_a)
-Edge _param_link_str_deserialize_a(_param_link_deserialize_a, _name_deserialize_a)
-Node _name_str_deserialize_a("name")
-Edge _param_name_deserialize_a(_func_params_deserialize_a, _name_deserialize_a)
-Edge _param_name_str_deserialize_a(_param_name_deserialize_a, _name_str_deserialize_a)
-Node _func_signature_log()
-Node _func_params_log()
-Node _func_body_log()
-Edge _primitives_log(primitives, _func_signature_log)
-Node _name_log("log")
-Edge _primitives_name_log(_primitives_log, _name_log)
-Node _body_log("body")
-Edge _signature_body_log(_func_signature_log, _func_body_log)
-Edge _signature_body_str_log(_signature_body_log, _body_log)
-Node _params_log("params")
-Edge _signature_params_log(_func_signature_log, _func_params_log)
-Edge _signature_params_str_log(_signature_params_log, _params_log)
-Node _func_params_log_a()
-Node _name_log_a("a")
-Edge _param_link_log_a(_func_params_log, _func_params_log_a)
-Edge _param_link_str_log_a(_param_link_log_a, _name_log_a)
-Node _name_str_log_a("name")
-Edge _param_name_log_a(_func_params_log_a, _name_log_a)
-Edge _param_name_str_log_a(_param_name_log_a, _name_str_log_a)
-Node user_root()
-Node user_input()
-Node ___user_input("input")
-Edge _user_input(user_root, user_input)
-Edge __user_input(_user_input, ___user_input)
-Node user_output()
-Node ___user_output("output")
-Edge _user_output(user_root, user_output)
-Edge __user_output(_user_output, ___user_output)
-Node user_globals()
-Node ___user_globals("globals")
-Edge _user_globals(user_root, user_globals)
-Edge __user_globals(_user_globals, ___user_globals)
-Node user_frame()
-Node ___user_frame("frame")
-Edge _user_frame(user_root, user_frame)
-Edge __user_frame(_user_frame, ___user_frame)
-Node user_evalstack()
-Node ___user_evalstack("evalstack")
-Edge _user_evalstack(user_frame, user_evalstack)
-Edge __user_evalstack(_user_evalstack, ___user_evalstack)
-Node user_symbols()
-Node ___user_symbols("symbols")
-Edge _user_symbols(user_frame, user_symbols)
-Edge __user_symbols(_user_symbols, ___user_symbols)
-Node user_returnvalue()
-Node ___user_returnvalue("returnvalue")
-Edge _user_returnvalue(user_frame, user_returnvalue)
-Edge __user_returnvalue(_user_returnvalue, ___user_returnvalue)
-Node ___user_last_input("last_input")
-Edge _user_last_input(user_root, user_input)
-Edge __user_last_input(_user_last_input, ___user_last_input)
-Node ___user_last_output("last_output")
-Edge _user_last_output(user_root, user_output)
-Edge __user_last_output(_user_last_output, ___user_last_output)
-Node ___new_user("user_manager")
-Edge _new_user(root, user_root)
-Edge __new_user(_new_user, ___new_user)

+ 167 - 155
interface/HUTN/test/graph_compilation_action_language/expected/factorial

@@ -1,185 +1,197 @@
 V auto_initial_IP(global)
 V auto_1(assign)
-V auto_10(constant)
-N auto_11
+V auto_10(call)
+V auto_11(access)
 V auto_12(resolve)
-V auto_13("integer_subtraction")
-V auto_14(constant)
-N auto_15
-V auto_16(resolve)
-V auto_17("integer_lte")
-V auto_18(constant)
-N auto_19
+V auto_13("create_node")
+V auto_14(resolve)
+V auto_15("integer_subtraction")
+V auto_16(call)
+V auto_17(access)
+V auto_18(resolve)
+V auto_19("create_node")
 V auto_2(global)
 V auto_20(resolve)
-V auto_21("integer_multiplication")
-V auto_22(constant)
-N auto_23
-V auto_24(while)
-V auto_25(output)
-V auto_26(call)
-V auto_27(access)
-V auto_28(resolve)
-V auto_29("factorial")
+V auto_21("integer_lte")
+V auto_22(call)
+V auto_23(access)
+V auto_24(resolve)
+V auto_25("create_node")
+V auto_26(resolve)
+V auto_27("integer_multiplication")
+V auto_28(constant)
+N auto_29
 V auto_3(assign)
-N auto_30
-V auto_31("a")
-V auto_32(input)
-V auto_33(constant)
-V auto_34(True)
-V auto_35(resolve)
-V auto_36("main")
-V auto_37(constant)
-N auto_38
-V auto_39(if)
+V auto_30(while)
+V auto_31(output)
+V auto_32(call)
+V auto_33(access)
+V auto_34(resolve)
+V auto_35("factorial")
+N auto_36
+V auto_37("a")
+V auto_38(input)
+V auto_39(constant)
 V auto_4(global)
-V auto_40(call)
-V auto_41(access)
-V auto_42(resolve)
-N auto_43
-V auto_44("b")
-V auto_45(constant)
-V auto_46(1)
-N auto_47
-V auto_48("a")
-V auto_49(access)
+V auto_40(True)
+V auto_41(resolve)
+V auto_42("main")
+V auto_43(constant)
+N auto_44
+V auto_45(if)
+V auto_46(call)
+V auto_47(access)
+V auto_48(resolve)
+N auto_49
 V auto_5(assign)
-V auto_50(resolve)
-N auto_51
-V auto_52("a")
-V auto_53(return)
-V auto_54(call)
+V auto_50("b")
+V auto_51(constant)
+V auto_52(1)
+N auto_53
+V auto_54("a")
 V auto_55(access)
 V auto_56(resolve)
 N auto_57
-V auto_58("b")
-V auto_59(call)
+V auto_58("a")
+V auto_59(return)
 V auto_6(global)
-V auto_60(access)
-V auto_61(resolve)
-N auto_62
-V auto_63("a")
-V auto_64(call)
-V auto_65(access)
-V auto_66(resolve)
-N auto_67
-V auto_68("b")
-V auto_69(constant)
+V auto_60(call)
+V auto_61(access)
+V auto_62(resolve)
+N auto_63
+V auto_64("b")
+V auto_65(call)
+V auto_66(access)
+V auto_67(resolve)
+N auto_68
+V auto_69("a")
 V auto_7(assign)
-V auto_70(1)
-N auto_71
-V auto_72("a")
-V auto_73(access)
-V auto_74(resolve)
-N auto_75
-V auto_76("a")
-V auto_77(access)
-V auto_78(resolve)
-V auto_79(return)
+V auto_70(call)
+V auto_71(access)
+V auto_72(resolve)
+N auto_73
+V auto_74("b")
+V auto_75(constant)
+V auto_76(1)
+N auto_77
+V auto_78("a")
+V auto_79(access)
 V auto_8(global)
-V auto_80(constant)
-V auto_81(1)
-N auto_82
-V auto_83(resolve)
+V auto_80(resolve)
+N auto_81
+V auto_82("a")
+V auto_83(access)
+V auto_84(resolve)
+V auto_85(return)
+V auto_86(constant)
+V auto_87(1)
+N auto_88
+V auto_89(resolve)
 V auto_9(assign)
 D auto_initial_IP,"next",auto_1
-D auto_initial_IP,"var",auto_29
+D auto_initial_IP,"var",auto_35
 D auto_1,"next",auto_2
-D auto_1,"value",auto_37
-D auto_1,"var",auto_83
-D auto_10,"node",auto_11
+D auto_1,"value",auto_43
+D auto_1,"var",auto_89
+D auto_10,"func",auto_11
+D auto_11,"var",auto_12
 D auto_12,"var",auto_13
-D auto_14,"node",auto_15
-D auto_16,"var",auto_17
-D auto_18,"node",auto_19
+D auto_14,"var",auto_15
+D auto_16,"func",auto_17
+D auto_17,"var",auto_18
+D auto_18,"var",auto_19
 D auto_2,"next",auto_3
-D auto_2,"var",auto_36
+D auto_2,"var",auto_42
 D auto_20,"var",auto_21
-D auto_22,"node",auto_23
-D auto_23,"body",auto_24
-D auto_24,"body",auto_25
-D auto_24,"cond",auto_33
-D auto_25,"value",auto_26
-D auto_26,"func",auto_27
-D auto_26,"last_param",auto_30
-D auto_26,"params",auto_30
-D auto_27,"var",auto_28
-D auto_28,"var",auto_29
+D auto_22,"func",auto_23
+D auto_23,"var",auto_24
+D auto_24,"var",auto_25
+D auto_26,"var",auto_27
+D auto_28,"node",auto_29
+D auto_29,"body",auto_30
 D auto_3,"next",auto_4
-D auto_3,"value",auto_22
-D auto_3,"var",auto_35
-D auto_30,"name",auto_31
-D auto_30,"value",auto_32
-D auto_33,"node",auto_34
-D auto_35,"var",auto_36
-D auto_37,"node",auto_38
-D auto_38,"body",auto_39
-D auto_38,"params",auto_82
-D auto_39,"cond",auto_40
-D auto_39,"else",auto_53
-D auto_39,"then",auto_79
+D auto_3,"value",auto_28
+D auto_3,"var",auto_41
+D auto_30,"body",auto_31
+D auto_30,"cond",auto_39
+D auto_31,"value",auto_32
+D auto_32,"func",auto_33
+D auto_32,"last_param",auto_36
+D auto_32,"params",auto_36
+D auto_33,"var",auto_34
+D auto_34,"var",auto_35
+D auto_36,"name",auto_37
+D auto_36,"value",auto_38
+D auto_39,"node",auto_40
 D auto_4,"next",auto_5
-D auto_4,"var",auto_21
-D auto_40,"func",auto_41
-D auto_40,"last_param",auto_43
-D auto_40,"params",auto_47
+D auto_4,"var",auto_27
 D auto_41,"var",auto_42
-D auto_42,"var",auto_17
-D auto_43,"name",auto_44
-D auto_43,"value",auto_45
-D auto_45,"node",auto_46
-D auto_47,"name",auto_48
-D auto_47,"next_param",auto_43
-D auto_47,"value",auto_49
-D auto_49,"var",auto_50
+D auto_43,"node",auto_44
+D auto_44,"body",auto_45
+D auto_44,"params",auto_88
+D auto_45,"cond",auto_46
+D auto_45,"else",auto_59
+D auto_45,"then",auto_85
+D auto_46,"func",auto_47
+D auto_46,"last_param",auto_49
+D auto_46,"params",auto_53
+D auto_47,"var",auto_48
+D auto_48,"var",auto_21
+D auto_49,"name",auto_50
+D auto_49,"value",auto_51
 D auto_5,"next",auto_6
-D auto_5,"value",auto_18
-D auto_5,"var",auto_20
-D auto_50,"var",auto_51
-D auto_51,"name",auto_52
-D auto_53,"value",auto_54
-D auto_54,"func",auto_55
-D auto_54,"last_param",auto_57
-D auto_54,"params",auto_75
+D auto_5,"value",auto_22
+D auto_5,"var",auto_26
+D auto_51,"node",auto_52
+D auto_53,"name",auto_54
+D auto_53,"next_param",auto_49
+D auto_53,"value",auto_55
 D auto_55,"var",auto_56
-D auto_56,"var",auto_21
+D auto_56,"var",auto_57
 D auto_57,"name",auto_58
-D auto_57,"value",auto_59
-D auto_59,"func",auto_60
-D auto_59,"last_param",auto_62
-D auto_59,"params",auto_62
+D auto_59,"value",auto_60
 D auto_6,"next",auto_7
-D auto_6,"var",auto_17
-D auto_60,"var",auto_61
-D auto_61,"var",auto_29
-D auto_62,"name",auto_63
-D auto_62,"value",auto_64
-D auto_64,"func",auto_65
-D auto_64,"last_param",auto_67
-D auto_64,"params",auto_71
-D auto_65,"var",auto_66
-D auto_66,"var",auto_13
-D auto_67,"name",auto_68
-D auto_67,"value",auto_69
-D auto_69,"node",auto_70
+D auto_6,"var",auto_21
+D auto_60,"func",auto_61
+D auto_60,"last_param",auto_63
+D auto_60,"params",auto_81
+D auto_61,"var",auto_62
+D auto_62,"var",auto_27
+D auto_63,"name",auto_64
+D auto_63,"value",auto_65
+D auto_65,"func",auto_66
+D auto_65,"last_param",auto_68
+D auto_65,"params",auto_68
+D auto_66,"var",auto_67
+D auto_67,"var",auto_35
+D auto_68,"name",auto_69
+D auto_68,"value",auto_70
 D auto_7,"next",auto_8
-D auto_7,"value",auto_14
-D auto_7,"var",auto_16
-D auto_71,"name",auto_72
-D auto_71,"next_param",auto_67
-D auto_71,"value",auto_73
-D auto_73,"var",auto_74
-D auto_74,"var",auto_51
-D auto_75,"name",auto_76
-D auto_75,"next_param",auto_57
-D auto_75,"value",auto_77
-D auto_77,"var",auto_78
-D auto_78,"var",auto_51
-D auto_79,"value",auto_80
+D auto_7,"value",auto_16
+D auto_7,"var",auto_20
+D auto_70,"func",auto_71
+D auto_70,"last_param",auto_73
+D auto_70,"params",auto_77
+D auto_71,"var",auto_72
+D auto_72,"var",auto_15
+D auto_73,"name",auto_74
+D auto_73,"value",auto_75
+D auto_75,"node",auto_76
+D auto_77,"name",auto_78
+D auto_77,"next_param",auto_73
+D auto_77,"value",auto_79
+D auto_79,"var",auto_80
 D auto_8,"next",auto_9
-D auto_8,"var",auto_13
-D auto_80,"node",auto_81
-D auto_82,"a",auto_51
-D auto_83,"var",auto_29
+D auto_8,"var",auto_15
+D auto_80,"var",auto_57
+D auto_81,"name",auto_82
+D auto_81,"next_param",auto_63
+D auto_81,"value",auto_83
+D auto_83,"var",auto_84
+D auto_84,"var",auto_57
+D auto_85,"value",auto_86
+D auto_86,"node",auto_87
+D auto_88,"a",auto_57
+D auto_89,"var",auto_35
 D auto_9,"value",auto_10
-D auto_9,"var",auto_12
+D auto_9,"var",auto_14

+ 199 - 187
interface/HUTN/test/graph_compilation_action_language/expected/fibonacci

@@ -1,217 +1,229 @@
 V auto_initial_IP(global)
 V auto_1(assign)
-V auto_10(constant)
-N auto_11
+V auto_10(call)
+V auto_100(constant)
+V auto_101(1)
+N auto_102
+V auto_103(resolve)
+V auto_11(access)
 V auto_12(resolve)
-V auto_13("integer_subtraction")
-V auto_14(constant)
-N auto_15
-V auto_16(resolve)
-V auto_17("integer_lte")
-V auto_18(constant)
-N auto_19
+V auto_13("create_node")
+V auto_14(resolve)
+V auto_15("integer_subtraction")
+V auto_16(call)
+V auto_17(access)
+V auto_18(resolve)
+V auto_19("create_node")
 V auto_2(global)
 V auto_20(resolve)
-V auto_21("integer_addition")
-V auto_22(constant)
-N auto_23
-V auto_24(while)
-V auto_25(output)
-V auto_26(call)
-V auto_27(access)
-V auto_28(resolve)
-V auto_29("fib")
+V auto_21("integer_lte")
+V auto_22(call)
+V auto_23(access)
+V auto_24(resolve)
+V auto_25("create_node")
+V auto_26(resolve)
+V auto_27("integer_addition")
+V auto_28(constant)
+N auto_29
 V auto_3(assign)
-N auto_30
-V auto_31("a")
-V auto_32(input)
-V auto_33(constant)
-V auto_34(True)
-V auto_35(resolve)
-V auto_36("main")
-V auto_37(constant)
-N auto_38
-V auto_39(if)
+V auto_30(while)
+V auto_31(output)
+V auto_32(call)
+V auto_33(access)
+V auto_34(resolve)
+V auto_35("fib")
+N auto_36
+V auto_37("a")
+V auto_38(input)
+V auto_39(constant)
 V auto_4(global)
-V auto_40(call)
-V auto_41(access)
-V auto_42(resolve)
-N auto_43
-V auto_44("b")
-V auto_45(constant)
-V auto_46(2)
-N auto_47
-V auto_48("a")
-V auto_49(access)
+V auto_40(True)
+V auto_41(resolve)
+V auto_42("main")
+V auto_43(constant)
+N auto_44
+V auto_45(if)
+V auto_46(call)
+V auto_47(access)
+V auto_48(resolve)
+N auto_49
 V auto_5(assign)
-V auto_50(resolve)
-N auto_51
-V auto_52("a")
-V auto_53(return)
-V auto_54(call)
+V auto_50("b")
+V auto_51(constant)
+V auto_52(2)
+N auto_53
+V auto_54("a")
 V auto_55(access)
 V auto_56(resolve)
 N auto_57
-V auto_58("b")
-V auto_59(call)
+V auto_58("a")
+V auto_59(return)
 V auto_6(global)
-V auto_60(access)
-V auto_61(resolve)
-N auto_62
-V auto_63("a")
-V auto_64(call)
-V auto_65(access)
-V auto_66(resolve)
-N auto_67
-V auto_68("b")
-V auto_69(constant)
+V auto_60(call)
+V auto_61(access)
+V auto_62(resolve)
+N auto_63
+V auto_64("b")
+V auto_65(call)
+V auto_66(access)
+V auto_67(resolve)
+N auto_68
+V auto_69("a")
 V auto_7(assign)
-V auto_70(2)
-N auto_71
-V auto_72("a")
-V auto_73(access)
-V auto_74(resolve)
-N auto_75
-V auto_76("a")
-V auto_77(call)
-V auto_78(access)
-V auto_79(resolve)
+V auto_70(call)
+V auto_71(access)
+V auto_72(resolve)
+N auto_73
+V auto_74("b")
+V auto_75(constant)
+V auto_76(2)
+N auto_77
+V auto_78("a")
+V auto_79(access)
 V auto_8(global)
-N auto_80
-V auto_81("a")
-V auto_82(call)
-V auto_83(access)
-V auto_84(resolve)
-N auto_85
-V auto_86("b")
-V auto_87(constant)
-V auto_88(1)
-N auto_89
+V auto_80(resolve)
+N auto_81
+V auto_82("a")
+V auto_83(call)
+V auto_84(access)
+V auto_85(resolve)
+N auto_86
+V auto_87("a")
+V auto_88(call)
+V auto_89(access)
 V auto_9(assign)
-V auto_90("a")
-V auto_91(access)
-V auto_92(resolve)
-V auto_93(return)
-V auto_94(constant)
-V auto_95(1)
-N auto_96
-V auto_97(resolve)
+V auto_90(resolve)
+N auto_91
+V auto_92("b")
+V auto_93(constant)
+V auto_94(1)
+N auto_95
+V auto_96("a")
+V auto_97(access)
+V auto_98(resolve)
+V auto_99(return)
 D auto_initial_IP,"next",auto_1
-D auto_initial_IP,"var",auto_29
+D auto_initial_IP,"var",auto_35
 D auto_1,"next",auto_2
-D auto_1,"value",auto_37
-D auto_1,"var",auto_97
-D auto_10,"node",auto_11
+D auto_1,"value",auto_43
+D auto_1,"var",auto_103
+D auto_10,"func",auto_11
+D auto_100,"node",auto_101
+D auto_102,"a",auto_57
+D auto_103,"var",auto_35
+D auto_11,"var",auto_12
 D auto_12,"var",auto_13
-D auto_14,"node",auto_15
-D auto_16,"var",auto_17
-D auto_18,"node",auto_19
+D auto_14,"var",auto_15
+D auto_16,"func",auto_17
+D auto_17,"var",auto_18
+D auto_18,"var",auto_19
 D auto_2,"next",auto_3
-D auto_2,"var",auto_36
+D auto_2,"var",auto_42
 D auto_20,"var",auto_21
-D auto_22,"node",auto_23
-D auto_23,"body",auto_24
-D auto_24,"body",auto_25
-D auto_24,"cond",auto_33
-D auto_25,"value",auto_26
-D auto_26,"func",auto_27
-D auto_26,"last_param",auto_30
-D auto_26,"params",auto_30
-D auto_27,"var",auto_28
-D auto_28,"var",auto_29
+D auto_22,"func",auto_23
+D auto_23,"var",auto_24
+D auto_24,"var",auto_25
+D auto_26,"var",auto_27
+D auto_28,"node",auto_29
+D auto_29,"body",auto_30
 D auto_3,"next",auto_4
-D auto_3,"value",auto_22
-D auto_3,"var",auto_35
-D auto_30,"name",auto_31
-D auto_30,"value",auto_32
-D auto_33,"node",auto_34
-D auto_35,"var",auto_36
-D auto_37,"node",auto_38
-D auto_38,"body",auto_39
-D auto_38,"params",auto_96
-D auto_39,"cond",auto_40
-D auto_39,"else",auto_53
-D auto_39,"then",auto_93
+D auto_3,"value",auto_28
+D auto_3,"var",auto_41
+D auto_30,"body",auto_31
+D auto_30,"cond",auto_39
+D auto_31,"value",auto_32
+D auto_32,"func",auto_33
+D auto_32,"last_param",auto_36
+D auto_32,"params",auto_36
+D auto_33,"var",auto_34
+D auto_34,"var",auto_35
+D auto_36,"name",auto_37
+D auto_36,"value",auto_38
+D auto_39,"node",auto_40
 D auto_4,"next",auto_5
-D auto_4,"var",auto_21
-D auto_40,"func",auto_41
-D auto_40,"last_param",auto_43
-D auto_40,"params",auto_47
+D auto_4,"var",auto_27
 D auto_41,"var",auto_42
-D auto_42,"var",auto_17
-D auto_43,"name",auto_44
-D auto_43,"value",auto_45
-D auto_45,"node",auto_46
-D auto_47,"name",auto_48
-D auto_47,"next_param",auto_43
-D auto_47,"value",auto_49
-D auto_49,"var",auto_50
+D auto_43,"node",auto_44
+D auto_44,"body",auto_45
+D auto_44,"params",auto_102
+D auto_45,"cond",auto_46
+D auto_45,"else",auto_59
+D auto_45,"then",auto_99
+D auto_46,"func",auto_47
+D auto_46,"last_param",auto_49
+D auto_46,"params",auto_53
+D auto_47,"var",auto_48
+D auto_48,"var",auto_21
+D auto_49,"name",auto_50
+D auto_49,"value",auto_51
 D auto_5,"next",auto_6
-D auto_5,"value",auto_18
-D auto_5,"var",auto_20
-D auto_50,"var",auto_51
-D auto_51,"name",auto_52
-D auto_53,"value",auto_54
-D auto_54,"func",auto_55
-D auto_54,"last_param",auto_57
-D auto_54,"params",auto_75
+D auto_5,"value",auto_22
+D auto_5,"var",auto_26
+D auto_51,"node",auto_52
+D auto_53,"name",auto_54
+D auto_53,"next_param",auto_49
+D auto_53,"value",auto_55
 D auto_55,"var",auto_56
-D auto_56,"var",auto_21
+D auto_56,"var",auto_57
 D auto_57,"name",auto_58
-D auto_57,"value",auto_59
-D auto_59,"func",auto_60
-D auto_59,"last_param",auto_62
-D auto_59,"params",auto_62
+D auto_59,"value",auto_60
 D auto_6,"next",auto_7
-D auto_6,"var",auto_17
-D auto_60,"var",auto_61
-D auto_61,"var",auto_29
-D auto_62,"name",auto_63
-D auto_62,"value",auto_64
-D auto_64,"func",auto_65
-D auto_64,"last_param",auto_67
-D auto_64,"params",auto_71
-D auto_65,"var",auto_66
-D auto_66,"var",auto_13
-D auto_67,"name",auto_68
-D auto_67,"value",auto_69
-D auto_69,"node",auto_70
+D auto_6,"var",auto_21
+D auto_60,"func",auto_61
+D auto_60,"last_param",auto_63
+D auto_60,"params",auto_81
+D auto_61,"var",auto_62
+D auto_62,"var",auto_27
+D auto_63,"name",auto_64
+D auto_63,"value",auto_65
+D auto_65,"func",auto_66
+D auto_65,"last_param",auto_68
+D auto_65,"params",auto_68
+D auto_66,"var",auto_67
+D auto_67,"var",auto_35
+D auto_68,"name",auto_69
+D auto_68,"value",auto_70
 D auto_7,"next",auto_8
-D auto_7,"value",auto_14
-D auto_7,"var",auto_16
-D auto_71,"name",auto_72
-D auto_71,"next_param",auto_67
-D auto_71,"value",auto_73
-D auto_73,"var",auto_74
-D auto_74,"var",auto_51
-D auto_75,"name",auto_76
-D auto_75,"next_param",auto_57
-D auto_75,"value",auto_77
-D auto_77,"func",auto_78
-D auto_77,"last_param",auto_80
-D auto_77,"params",auto_80
-D auto_78,"var",auto_79
-D auto_79,"var",auto_29
+D auto_7,"value",auto_16
+D auto_7,"var",auto_20
+D auto_70,"func",auto_71
+D auto_70,"last_param",auto_73
+D auto_70,"params",auto_77
+D auto_71,"var",auto_72
+D auto_72,"var",auto_15
+D auto_73,"name",auto_74
+D auto_73,"value",auto_75
+D auto_75,"node",auto_76
+D auto_77,"name",auto_78
+D auto_77,"next_param",auto_73
+D auto_77,"value",auto_79
+D auto_79,"var",auto_80
 D auto_8,"next",auto_9
-D auto_8,"var",auto_13
-D auto_80,"name",auto_81
-D auto_80,"value",auto_82
-D auto_82,"func",auto_83
-D auto_82,"last_param",auto_85
-D auto_82,"params",auto_89
-D auto_83,"var",auto_84
-D auto_84,"var",auto_13
-D auto_85,"name",auto_86
-D auto_85,"value",auto_87
-D auto_87,"node",auto_88
-D auto_89,"name",auto_90
-D auto_89,"next_param",auto_85
-D auto_89,"value",auto_91
+D auto_8,"var",auto_15
+D auto_80,"var",auto_57
+D auto_81,"name",auto_82
+D auto_81,"next_param",auto_63
+D auto_81,"value",auto_83
+D auto_83,"func",auto_84
+D auto_83,"last_param",auto_86
+D auto_83,"params",auto_86
+D auto_84,"var",auto_85
+D auto_85,"var",auto_35
+D auto_86,"name",auto_87
+D auto_86,"value",auto_88
+D auto_88,"func",auto_89
+D auto_88,"last_param",auto_91
+D auto_88,"params",auto_95
+D auto_89,"var",auto_90
 D auto_9,"value",auto_10
-D auto_9,"var",auto_12
-D auto_91,"var",auto_92
-D auto_92,"var",auto_51
-D auto_93,"value",auto_94
-D auto_94,"node",auto_95
-D auto_96,"a",auto_51
-D auto_97,"var",auto_29
+D auto_9,"var",auto_14
+D auto_90,"var",auto_15
+D auto_91,"name",auto_92
+D auto_91,"value",auto_93
+D auto_93,"node",auto_94
+D auto_95,"name",auto_96
+D auto_95,"next_param",auto_91
+D auto_95,"value",auto_97
+D auto_97,"var",auto_98
+D auto_98,"var",auto_57
+D auto_99,"value",auto_100

+ 417 - 385
interface/HUTN/test/graph_compilation_action_language/expected/fibonacci_smart

@@ -1,462 +1,494 @@
 V auto_initial_IP(global)
 V auto_1(assign)
 V auto_10(global)
-V auto_100(access)
-V auto_101(resolve)
-N auto_102
-V auto_103("b")
+N auto_100
+V auto_101("a")
+V auto_102(access)
+V auto_103(resolve)
 V auto_104(call)
 V auto_105(access)
 V auto_106(resolve)
-N auto_107
-V auto_108("b")
-V auto_109(call)
+V auto_107(resolve)
+V auto_108(resolve)
+V auto_109("main")
 V auto_11(assign)
-V auto_110(access)
-V auto_111(resolve)
-N auto_112
-V auto_113("b")
-V auto_114(call)
-V auto_115(access)
-V auto_116(resolve)
-N auto_117
-V auto_118("b")
-V auto_119(constant)
+V auto_110(constant)
+N auto_111
+V auto_112(declare)
+V auto_113(while)
+V auto_114(assign)
+V auto_115(call)
+V auto_116(access)
+V auto_117(resolve)
+N auto_118
+V auto_119("b")
 V auto_12(global)
-V auto_120(1)
-N auto_121
-V auto_122("a")
-V auto_123(access)
-V auto_124(resolve)
-N auto_125
-N auto_126
-V auto_127("a")
-V auto_128(access)
-V auto_129(resolve)
+V auto_120(call)
+V auto_121(access)
+V auto_122(resolve)
+N auto_123
+V auto_124("b")
+V auto_125(call)
+V auto_126(access)
+V auto_127(resolve)
+N auto_128
+V auto_129("b")
 V auto_13(assign)
-N auto_130
-V auto_131("a")
-V auto_132(call)
-V auto_133(access)
-V auto_134(resolve)
-N auto_135
-V auto_136("b")
-V auto_137(call)
-V auto_138(access)
-V auto_139(resolve)
+V auto_130(call)
+V auto_131(access)
+V auto_132(resolve)
+N auto_133
+V auto_134("b")
+V auto_135(constant)
+V auto_136(1)
+N auto_137
+V auto_138("a")
+V auto_139(access)
 V auto_14(global)
-N auto_140
-V auto_141("b")
-V auto_142(constant)
-V auto_143(2)
-N auto_144
-V auto_145("a")
-V auto_146(access)
-V auto_147(resolve)
-N auto_148
-V auto_149("a")
+V auto_140(resolve)
+N auto_141
+N auto_142
+V auto_143("a")
+V auto_144(access)
+V auto_145(resolve)
+N auto_146
+V auto_147("a")
+V auto_148(call)
+V auto_149(access)
 V auto_15(assign)
-V auto_150(access)
-V auto_151(resolve)
-N auto_152
-V auto_153("a")
+V auto_150(resolve)
+N auto_151
+V auto_152("b")
+V auto_153(call)
 V auto_154(access)
 V auto_155(resolve)
-V auto_156(call)
-V auto_157(access)
-V auto_158(resolve)
-N auto_159
+N auto_156
+V auto_157("b")
+V auto_158(constant)
+V auto_159(2)
 V auto_16(global)
-V auto_160("a")
-V auto_161(access)
-V auto_162(resolve)
+N auto_160
+V auto_161("a")
+V auto_162(access)
 V auto_163(resolve)
-V auto_164(call)
-V auto_165(access)
-V auto_166(resolve)
-N auto_167
-V auto_168("b")
-V auto_169(call)
+N auto_164
+V auto_165("a")
+V auto_166(access)
+V auto_167(resolve)
+N auto_168
+V auto_169("a")
 V auto_17(assign)
 V auto_170(access)
 V auto_171(resolve)
-N auto_172
-V auto_173("a")
-V auto_174(access)
-V auto_175(resolve)
-N auto_176
-V auto_177("a")
-V auto_178(access)
+V auto_172(call)
+V auto_173(access)
+V auto_174(resolve)
+N auto_175
+V auto_176("a")
+V auto_177(access)
+V auto_178(resolve)
 V auto_179(resolve)
 V auto_18(global)
-N auto_180
-V auto_181("a")
-V auto_182(return)
-V auto_183(call)
-V auto_184(access)
-V auto_185(resolve)
-N auto_186
-V auto_187("b")
-V auto_188(call)
-V auto_189(access)
+V auto_180(call)
+V auto_181(access)
+V auto_182(resolve)
+N auto_183
+V auto_184("b")
+V auto_185(call)
+V auto_186(access)
+V auto_187(resolve)
+N auto_188
+V auto_189("a")
 V auto_19(assign)
-V auto_190(resolve)
-N auto_191
-V auto_192("b")
-V auto_193(constant)
-V auto_194(1)
-N auto_195
-V auto_196("a")
-V auto_197(access)
-V auto_198(resolve)
-N auto_199
+V auto_190(access)
+V auto_191(resolve)
+N auto_192
+V auto_193("a")
+V auto_194(access)
+V auto_195(resolve)
+N auto_196
+V auto_197("a")
+V auto_198(return)
+V auto_199(call)
 V auto_2(global)
-V auto_20(constant)
-V auto_200("a")
-V auto_201(access)
-V auto_202(resolve)
-N auto_203
-V auto_204(resolve)
-N auto_21
+V auto_20(call)
+V auto_200(access)
+V auto_201(resolve)
+N auto_202
+V auto_203("b")
+V auto_204(call)
+V auto_205(access)
+V auto_206(resolve)
+N auto_207
+V auto_208("b")
+V auto_209(constant)
+V auto_21(access)
+V auto_210(1)
+N auto_211
+V auto_212("a")
+V auto_213(access)
+V auto_214(resolve)
+N auto_215
+V auto_216("a")
+V auto_217(access)
+V auto_218(resolve)
+N auto_219
 V auto_22(resolve)
-V auto_23("numbers")
-V auto_24(constant)
-N auto_25
-V auto_26(resolve)
-V auto_27("create_node")
-V auto_28(constant)
-N auto_29
+V auto_220(resolve)
+V auto_23("create_node")
+V auto_24(resolve)
+V auto_25("numbers")
+V auto_26(call)
+V auto_27(access)
+V auto_28(resolve)
+V auto_29("create_node")
 V auto_3(assign)
 V auto_30(resolve)
-V auto_31("dict_read")
-V auto_32(constant)
-N auto_33
+V auto_31("create_node")
+V auto_32(call)
+V auto_33(access)
 V auto_34(resolve)
-V auto_35("integer_subtraction")
-V auto_36(constant)
-N auto_37
-V auto_38(resolve)
-V auto_39("list_append")
+V auto_35("create_node")
+V auto_36(resolve)
+V auto_37("dict_read")
+V auto_38(call)
+V auto_39(access)
 V auto_4(global)
-V auto_40(constant)
-N auto_41
+V auto_40(resolve)
+V auto_41("create_node")
 V auto_42(resolve)
-V auto_43("list_len")
-V auto_44(constant)
-N auto_45
+V auto_43("integer_subtraction")
+V auto_44(call)
+V auto_45(access)
 V auto_46(resolve)
-V auto_47("integer_gt")
-V auto_48(constant)
-N auto_49
+V auto_47("create_node")
+V auto_48(resolve)
+V auto_49("list_append")
 V auto_5(assign)
-V auto_50(resolve)
-V auto_51("integer_addition")
-V auto_52(constant)
-N auto_53
-V auto_54(assign)
-V auto_55(call)
-V auto_56(access)
-V auto_57(resolve)
-N auto_58
-V auto_59("b")
+V auto_50(call)
+V auto_51(access)
+V auto_52(resolve)
+V auto_53("create_node")
+V auto_54(resolve)
+V auto_55("list_len")
+V auto_56(call)
+V auto_57(access)
+V auto_58(resolve)
+V auto_59("create_node")
 V auto_6(global)
-V auto_60(constant)
-V auto_61(1)
+V auto_60(resolve)
+V auto_61("integer_gt")
 V auto_62(call)
 V auto_63(access)
 V auto_64(resolve)
-N auto_65
-V auto_66("b")
-V auto_67(constant)
-V auto_68(1)
-V auto_69(while)
+V auto_65("create_node")
+V auto_66(resolve)
+V auto_67("integer_addition")
+V auto_68(constant)
+N auto_69
 V auto_7(assign)
-V auto_70(output)
+V auto_70(assign)
 V auto_71(call)
 V auto_72(access)
 V auto_73(resolve)
-V auto_74("fib")
-N auto_75
-V auto_76("a")
-V auto_77(input)
-V auto_78(constant)
-V auto_79(True)
+N auto_74
+V auto_75("b")
+V auto_76(constant)
+V auto_77(1)
+V auto_78(call)
+V auto_79(access)
 V auto_8(global)
-N auto_80
-V auto_81("a")
-V auto_82(access)
-V auto_83(resolve)
-N auto_84
-V auto_85("a")
-V auto_86(access)
-V auto_87(resolve)
-V auto_88(call)
-V auto_89(access)
+V auto_80(resolve)
+N auto_81
+V auto_82("b")
+V auto_83(constant)
+V auto_84(1)
+V auto_85(while)
+V auto_86(output)
+V auto_87(call)
+V auto_88(access)
+V auto_89(resolve)
 V auto_9(assign)
-V auto_90(resolve)
-V auto_91(resolve)
-V auto_92(resolve)
-V auto_93("main")
+V auto_90("fib")
+N auto_91
+V auto_92("a")
+V auto_93(input)
 V auto_94(constant)
-N auto_95
-V auto_96(declare)
-V auto_97(while)
-V auto_98(assign)
-V auto_99(call)
+V auto_95(True)
+N auto_96
+V auto_97("a")
+V auto_98(access)
+V auto_99(resolve)
 D auto_initial_IP,"next",auto_1
-D auto_initial_IP,"var",auto_74
+D auto_initial_IP,"var",auto_90
 D auto_1,"next",auto_2
-D auto_1,"value",auto_94
-D auto_1,"var",auto_204
+D auto_1,"value",auto_110
+D auto_1,"var",auto_220
 D auto_10,"next",auto_11
-D auto_10,"var",auto_39
-D auto_100,"var",auto_101
-D auto_101,"var",auto_39
-D auto_102,"name",auto_103
-D auto_102,"value",auto_104
+D auto_10,"var",auto_49
+D auto_100,"name",auto_101
+D auto_100,"next_param",auto_74
+D auto_100,"value",auto_102
+D auto_102,"var",auto_103
+D auto_103,"var",auto_25
 D auto_104,"func",auto_105
-D auto_104,"last_param",auto_107
-D auto_104,"params",auto_130
 D auto_105,"var",auto_106
-D auto_106,"var",auto_51
-D auto_107,"name",auto_108
-D auto_107,"value",auto_109
-D auto_109,"func",auto_110
-D auto_109,"last_param",auto_112
-D auto_109,"params",auto_126
+D auto_106,"var",auto_31
+D auto_107,"var",auto_25
+D auto_108,"var",auto_109
 D auto_11,"next",auto_12
-D auto_11,"value",auto_36
-D auto_11,"var",auto_38
-D auto_110,"var",auto_111
-D auto_111,"var",auto_31
-D auto_112,"name",auto_113
-D auto_112,"value",auto_114
-D auto_114,"func",auto_115
-D auto_114,"last_param",auto_117
-D auto_114,"params",auto_121
-D auto_115,"var",auto_116
-D auto_116,"var",auto_35
-D auto_117,"name",auto_118
-D auto_117,"value",auto_119
-D auto_119,"node",auto_120
+D auto_11,"value",auto_44
+D auto_11,"var",auto_48
+D auto_110,"node",auto_111
+D auto_111,"body",auto_112
+D auto_111,"params",auto_219
+D auto_112,"next",auto_113
+D auto_112,"var",auto_141
+D auto_113,"body",auto_114
+D auto_113,"cond",auto_180
+D auto_113,"next",auto_198
+D auto_114,"next",auto_115
+D auto_114,"value",auto_172
+D auto_114,"var",auto_179
+D auto_115,"func",auto_116
+D auto_115,"last_param",auto_118
+D auto_115,"params",auto_168
+D auto_116,"var",auto_117
+D auto_117,"var",auto_49
+D auto_118,"name",auto_119
+D auto_118,"value",auto_120
 D auto_12,"next",auto_13
-D auto_12,"var",auto_35
-D auto_121,"name",auto_122
-D auto_121,"next_param",auto_117
-D auto_121,"value",auto_123
-D auto_123,"var",auto_124
-D auto_124,"var",auto_125
-D auto_126,"name",auto_127
-D auto_126,"next_param",auto_112
-D auto_126,"value",auto_128
-D auto_128,"var",auto_129
-D auto_129,"var",auto_23
+D auto_12,"var",auto_43
+D auto_120,"func",auto_121
+D auto_120,"last_param",auto_123
+D auto_120,"params",auto_146
+D auto_121,"var",auto_122
+D auto_122,"var",auto_67
+D auto_123,"name",auto_124
+D auto_123,"value",auto_125
+D auto_125,"func",auto_126
+D auto_125,"last_param",auto_128
+D auto_125,"params",auto_142
+D auto_126,"var",auto_127
+D auto_127,"var",auto_37
+D auto_128,"name",auto_129
+D auto_128,"value",auto_130
 D auto_13,"next",auto_14
-D auto_13,"value",auto_32
-D auto_13,"var",auto_34
-D auto_130,"name",auto_131
-D auto_130,"next_param",auto_107
-D auto_130,"value",auto_132
-D auto_132,"func",auto_133
-D auto_132,"last_param",auto_135
-D auto_132,"params",auto_148
-D auto_133,"var",auto_134
-D auto_134,"var",auto_31
-D auto_135,"name",auto_136
-D auto_135,"value",auto_137
-D auto_137,"func",auto_138
-D auto_137,"last_param",auto_140
-D auto_137,"params",auto_144
-D auto_138,"var",auto_139
-D auto_139,"var",auto_35
+D auto_13,"value",auto_38
+D auto_13,"var",auto_42
+D auto_130,"func",auto_131
+D auto_130,"last_param",auto_133
+D auto_130,"params",auto_137
+D auto_131,"var",auto_132
+D auto_132,"var",auto_43
+D auto_133,"name",auto_134
+D auto_133,"value",auto_135
+D auto_135,"node",auto_136
+D auto_137,"name",auto_138
+D auto_137,"next_param",auto_133
+D auto_137,"value",auto_139
+D auto_139,"var",auto_140
 D auto_14,"next",auto_15
-D auto_14,"var",auto_31
-D auto_140,"name",auto_141
-D auto_140,"value",auto_142
-D auto_142,"node",auto_143
-D auto_144,"name",auto_145
-D auto_144,"next_param",auto_140
-D auto_144,"value",auto_146
-D auto_146,"var",auto_147
-D auto_147,"var",auto_125
-D auto_148,"name",auto_149
-D auto_148,"next_param",auto_135
-D auto_148,"value",auto_150
+D auto_14,"var",auto_37
+D auto_140,"var",auto_141
+D auto_142,"name",auto_143
+D auto_142,"next_param",auto_128
+D auto_142,"value",auto_144
+D auto_144,"var",auto_145
+D auto_145,"var",auto_25
+D auto_146,"name",auto_147
+D auto_146,"next_param",auto_123
+D auto_146,"value",auto_148
+D auto_148,"func",auto_149
+D auto_148,"last_param",auto_151
+D auto_148,"params",auto_164
+D auto_149,"var",auto_150
 D auto_15,"next",auto_16
-D auto_15,"value",auto_28
-D auto_15,"var",auto_30
-D auto_150,"var",auto_151
-D auto_151,"var",auto_23
-D auto_152,"name",auto_153
-D auto_152,"next_param",auto_102
-D auto_152,"value",auto_154
+D auto_15,"value",auto_32
+D auto_15,"var",auto_36
+D auto_150,"var",auto_37
+D auto_151,"name",auto_152
+D auto_151,"value",auto_153
+D auto_153,"func",auto_154
+D auto_153,"last_param",auto_156
+D auto_153,"params",auto_160
 D auto_154,"var",auto_155
-D auto_155,"var",auto_23
-D auto_156,"func",auto_157
-D auto_156,"last_param",auto_159
-D auto_156,"params",auto_159
-D auto_157,"var",auto_158
-D auto_158,"var",auto_43
-D auto_159,"name",auto_160
-D auto_159,"value",auto_161
+D auto_155,"var",auto_43
+D auto_156,"name",auto_157
+D auto_156,"value",auto_158
+D auto_158,"node",auto_159
 D auto_16,"next",auto_17
-D auto_16,"var",auto_27
-D auto_161,"var",auto_162
-D auto_162,"var",auto_23
-D auto_163,"var",auto_125
-D auto_164,"func",auto_165
-D auto_164,"last_param",auto_167
-D auto_164,"params",auto_176
-D auto_165,"var",auto_166
-D auto_166,"var",auto_47
-D auto_167,"name",auto_168
-D auto_167,"value",auto_169
-D auto_169,"func",auto_170
-D auto_169,"last_param",auto_172
-D auto_169,"params",auto_172
+D auto_16,"var",auto_31
+D auto_160,"name",auto_161
+D auto_160,"next_param",auto_156
+D auto_160,"value",auto_162
+D auto_162,"var",auto_163
+D auto_163,"var",auto_141
+D auto_164,"name",auto_165
+D auto_164,"next_param",auto_151
+D auto_164,"value",auto_166
+D auto_166,"var",auto_167
+D auto_167,"var",auto_25
+D auto_168,"name",auto_169
+D auto_168,"next_param",auto_118
+D auto_168,"value",auto_170
 D auto_17,"next",auto_18
-D auto_17,"value",auto_24
-D auto_17,"var",auto_26
+D auto_17,"value",auto_26
+D auto_17,"var",auto_30
 D auto_170,"var",auto_171
-D auto_171,"var",auto_43
-D auto_172,"name",auto_173
-D auto_172,"value",auto_174
-D auto_174,"var",auto_175
-D auto_175,"var",auto_23
-D auto_176,"name",auto_177
-D auto_176,"next_param",auto_167
-D auto_176,"value",auto_178
-D auto_178,"var",auto_179
-D auto_179,"var",auto_180
+D auto_171,"var",auto_25
+D auto_172,"func",auto_173
+D auto_172,"last_param",auto_175
+D auto_172,"params",auto_175
+D auto_173,"var",auto_174
+D auto_174,"var",auto_55
+D auto_175,"name",auto_176
+D auto_175,"value",auto_177
+D auto_177,"var",auto_178
+D auto_178,"var",auto_25
+D auto_179,"var",auto_141
 D auto_18,"next",auto_19
-D auto_18,"var",auto_23
-D auto_180,"name",auto_181
-D auto_182,"value",auto_183
-D auto_183,"func",auto_184
-D auto_183,"last_param",auto_186
-D auto_183,"params",auto_199
-D auto_184,"var",auto_185
-D auto_185,"var",auto_31
-D auto_186,"name",auto_187
-D auto_186,"value",auto_188
-D auto_188,"func",auto_189
-D auto_188,"last_param",auto_191
-D auto_188,"params",auto_195
-D auto_189,"var",auto_190
+D auto_18,"var",auto_25
+D auto_180,"func",auto_181
+D auto_180,"last_param",auto_183
+D auto_180,"params",auto_192
+D auto_181,"var",auto_182
+D auto_182,"var",auto_61
+D auto_183,"name",auto_184
+D auto_183,"value",auto_185
+D auto_185,"func",auto_186
+D auto_185,"last_param",auto_188
+D auto_185,"params",auto_188
+D auto_186,"var",auto_187
+D auto_187,"var",auto_55
+D auto_188,"name",auto_189
+D auto_188,"value",auto_190
 D auto_19,"value",auto_20
-D auto_19,"var",auto_22
-D auto_190,"var",auto_35
-D auto_191,"name",auto_192
-D auto_191,"value",auto_193
-D auto_193,"node",auto_194
-D auto_195,"name",auto_196
-D auto_195,"next_param",auto_191
-D auto_195,"value",auto_197
-D auto_197,"var",auto_198
-D auto_198,"var",auto_180
-D auto_199,"name",auto_200
-D auto_199,"next_param",auto_186
-D auto_199,"value",auto_201
+D auto_19,"var",auto_24
+D auto_190,"var",auto_191
+D auto_191,"var",auto_25
+D auto_192,"name",auto_193
+D auto_192,"next_param",auto_183
+D auto_192,"value",auto_194
+D auto_194,"var",auto_195
+D auto_195,"var",auto_196
+D auto_196,"name",auto_197
+D auto_198,"value",auto_199
+D auto_199,"func",auto_200
+D auto_199,"last_param",auto_202
+D auto_199,"params",auto_215
 D auto_2,"next",auto_3
-D auto_2,"var",auto_93
-D auto_20,"node",auto_21
-D auto_201,"var",auto_202
-D auto_202,"var",auto_23
-D auto_203,"a",auto_180
-D auto_204,"var",auto_74
+D auto_2,"var",auto_109
+D auto_20,"func",auto_21
+D auto_200,"var",auto_201
+D auto_201,"var",auto_37
+D auto_202,"name",auto_203
+D auto_202,"value",auto_204
+D auto_204,"func",auto_205
+D auto_204,"last_param",auto_207
+D auto_204,"params",auto_211
+D auto_205,"var",auto_206
+D auto_206,"var",auto_43
+D auto_207,"name",auto_208
+D auto_207,"value",auto_209
+D auto_209,"node",auto_210
+D auto_21,"var",auto_22
+D auto_211,"name",auto_212
+D auto_211,"next_param",auto_207
+D auto_211,"value",auto_213
+D auto_213,"var",auto_214
+D auto_214,"var",auto_196
+D auto_215,"name",auto_216
+D auto_215,"next_param",auto_202
+D auto_215,"value",auto_217
+D auto_217,"var",auto_218
+D auto_218,"var",auto_25
+D auto_219,"a",auto_196
 D auto_22,"var",auto_23
-D auto_24,"node",auto_25
-D auto_26,"var",auto_27
-D auto_28,"node",auto_29
+D auto_220,"var",auto_90
+D auto_24,"var",auto_25
+D auto_26,"func",auto_27
+D auto_27,"var",auto_28
+D auto_28,"var",auto_29
 D auto_3,"next",auto_4
-D auto_3,"value",auto_52
-D auto_3,"var",auto_92
+D auto_3,"value",auto_68
+D auto_3,"var",auto_108
 D auto_30,"var",auto_31
-D auto_32,"node",auto_33
+D auto_32,"func",auto_33
+D auto_33,"var",auto_34
 D auto_34,"var",auto_35
-D auto_36,"node",auto_37
-D auto_38,"var",auto_39
+D auto_36,"var",auto_37
+D auto_38,"func",auto_39
+D auto_39,"var",auto_40
 D auto_4,"next",auto_5
-D auto_4,"var",auto_51
-D auto_40,"node",auto_41
+D auto_4,"var",auto_67
+D auto_40,"var",auto_41
 D auto_42,"var",auto_43
-D auto_44,"node",auto_45
+D auto_44,"func",auto_45
+D auto_45,"var",auto_46
 D auto_46,"var",auto_47
-D auto_48,"node",auto_49
+D auto_48,"var",auto_49
 D auto_5,"next",auto_6
-D auto_5,"value",auto_48
-D auto_5,"var",auto_50
-D auto_50,"var",auto_51
-D auto_52,"node",auto_53
-D auto_53,"body",auto_54
-D auto_54,"next",auto_55
-D auto_54,"value",auto_88
-D auto_54,"var",auto_91
-D auto_55,"func",auto_56
-D auto_55,"last_param",auto_58
-D auto_55,"next",auto_62
-D auto_55,"params",auto_84
-D auto_56,"var",auto_57
-D auto_57,"var",auto_39
-D auto_58,"name",auto_59
-D auto_58,"value",auto_60
+D auto_5,"value",auto_62
+D auto_5,"var",auto_66
+D auto_50,"func",auto_51
+D auto_51,"var",auto_52
+D auto_52,"var",auto_53
+D auto_54,"var",auto_55
+D auto_56,"func",auto_57
+D auto_57,"var",auto_58
+D auto_58,"var",auto_59
 D auto_6,"next",auto_7
-D auto_6,"var",auto_47
-D auto_60,"node",auto_61
+D auto_6,"var",auto_61
+D auto_60,"var",auto_61
 D auto_62,"func",auto_63
-D auto_62,"last_param",auto_65
-D auto_62,"next",auto_69
-D auto_62,"params",auto_80
 D auto_63,"var",auto_64
-D auto_64,"var",auto_39
-D auto_65,"name",auto_66
-D auto_65,"value",auto_67
-D auto_67,"node",auto_68
+D auto_64,"var",auto_65
+D auto_66,"var",auto_67
+D auto_68,"node",auto_69
 D auto_69,"body",auto_70
-D auto_69,"cond",auto_78
 D auto_7,"next",auto_8
-D auto_7,"value",auto_44
-D auto_7,"var",auto_46
-D auto_70,"value",auto_71
+D auto_7,"value",auto_56
+D auto_7,"var",auto_60
+D auto_70,"next",auto_71
+D auto_70,"value",auto_104
+D auto_70,"var",auto_107
 D auto_71,"func",auto_72
-D auto_71,"last_param",auto_75
-D auto_71,"params",auto_75
+D auto_71,"last_param",auto_74
+D auto_71,"next",auto_78
+D auto_71,"params",auto_100
 D auto_72,"var",auto_73
-D auto_73,"var",auto_74
-D auto_75,"name",auto_76
-D auto_75,"value",auto_77
-D auto_78,"node",auto_79
+D auto_73,"var",auto_49
+D auto_74,"name",auto_75
+D auto_74,"value",auto_76
+D auto_76,"node",auto_77
+D auto_78,"func",auto_79
+D auto_78,"last_param",auto_81
+D auto_78,"next",auto_85
+D auto_78,"params",auto_96
+D auto_79,"var",auto_80
 D auto_8,"next",auto_9
-D auto_8,"var",auto_43
-D auto_80,"name",auto_81
-D auto_80,"next_param",auto_65
-D auto_80,"value",auto_82
-D auto_82,"var",auto_83
-D auto_83,"var",auto_23
-D auto_84,"name",auto_85
-D auto_84,"next_param",auto_58
-D auto_84,"value",auto_86
-D auto_86,"var",auto_87
-D auto_87,"var",auto_23
-D auto_88,"func",auto_89
+D auto_8,"var",auto_55
+D auto_80,"var",auto_49
+D auto_81,"name",auto_82
+D auto_81,"value",auto_83
+D auto_83,"node",auto_84
+D auto_85,"body",auto_86
+D auto_85,"cond",auto_94
+D auto_86,"value",auto_87
+D auto_87,"func",auto_88
+D auto_87,"last_param",auto_91
+D auto_87,"params",auto_91
+D auto_88,"var",auto_89
 D auto_89,"var",auto_90
 D auto_9,"next",auto_10
-D auto_9,"value",auto_40
-D auto_9,"var",auto_42
-D auto_90,"var",auto_27
-D auto_91,"var",auto_23
-D auto_92,"var",auto_93
+D auto_9,"value",auto_50
+D auto_9,"var",auto_54
+D auto_91,"name",auto_92
+D auto_91,"value",auto_93
 D auto_94,"node",auto_95
-D auto_95,"body",auto_96
-D auto_95,"params",auto_203
-D auto_96,"next",auto_97
-D auto_96,"var",auto_125
-D auto_97,"body",auto_98
-D auto_97,"cond",auto_164
-D auto_97,"next",auto_182
-D auto_98,"next",auto_99
-D auto_98,"value",auto_156
-D auto_98,"var",auto_163
-D auto_99,"func",auto_100
-D auto_99,"last_param",auto_102
-D auto_99,"params",auto_152
+D auto_96,"name",auto_97
+D auto_96,"next_param",auto_81
+D auto_96,"value",auto_98
+D auto_98,"var",auto_99
+D auto_99,"var",auto_25

+ 19 - 21
interface/HUTN/test/graph_compilation_action_language/expected/global

@@ -1,35 +1,33 @@
 V auto_initial_IP(global)
 V auto_1(assign)
-V auto_10("a")
-V auto_11(constant)
-N auto_12
-V auto_13(declare)
-N auto_14
-V auto_15(resolve)
-V auto_16("abc")
+V auto_10(constant)
+N auto_11
+V auto_12(declare)
+N auto_13
+V auto_14(resolve)
+V auto_15("abc")
 V auto_2(global)
 V auto_3(assign)
 V auto_4(global)
 V auto_5("b")
 V auto_6(constant)
-V auto_7(constant)
-V auto_8(1)
-V auto_9(resolve)
+V auto_7(1)
+V auto_8(resolve)
+V auto_9("a")
 D auto_initial_IP,"next",auto_1
-D auto_initial_IP,"var",auto_16
+D auto_initial_IP,"var",auto_15
 D auto_1,"next",auto_2
-D auto_1,"value",auto_11
-D auto_1,"var",auto_15
-D auto_11,"node",auto_12
-D auto_12,"body",auto_13
-D auto_13,"var",auto_14
-D auto_15,"var",auto_16
+D auto_1,"value",auto_10
+D auto_1,"var",auto_14
+D auto_10,"node",auto_11
+D auto_11,"body",auto_12
+D auto_12,"var",auto_13
+D auto_14,"var",auto_15
 D auto_2,"next",auto_3
-D auto_2,"var",auto_10
+D auto_2,"var",auto_9
 D auto_3,"next",auto_4
 D auto_3,"value",auto_6
-D auto_3,"var",auto_9
+D auto_3,"var",auto_8
 D auto_4,"var",auto_5
 D auto_6,"node",auto_7
-D auto_7,"node",auto_8
-D auto_9,"var",auto_10
+D auto_8,"var",auto_9

+ 92 - 76
interface/HUTN/test/graph_compilation_action_language/expected/include

@@ -1,112 +1,128 @@
 V auto_initial_IP(global)
 V auto_1(assign)
-V auto_10(constant)
-N auto_11
+V auto_10(call)
+V auto_11(access)
 V auto_12(resolve)
-V auto_13("float_subtraction")
-V auto_14(constant)
-N auto_15
-V auto_16(resolve)
-V auto_17("float_addition")
-V auto_18(constant)
-N auto_19
+V auto_13("create_node")
+V auto_14(resolve)
+V auto_15("float_subtraction")
+V auto_16(call)
+V auto_17(access)
+V auto_18(resolve)
+V auto_19("create_node")
 V auto_2(global)
 V auto_20(resolve)
-V auto_21("integer_subtraction")
-V auto_22(constant)
-N auto_23
+V auto_21("float_addition")
+V auto_22(call)
+V auto_23(access)
 V auto_24(resolve)
-V auto_25("integer_addition")
-V auto_26(constant)
-N auto_27
+V auto_25("create_node")
+V auto_26(resolve)
+V auto_27("integer_subtraction")
 V auto_28(call)
 V auto_29(access)
 V auto_3(assign)
 V auto_30(resolve)
-N auto_31
-V auto_32("b")
-V auto_33(constant)
-V auto_34(2)
-V auto_35(call)
-V auto_36(access)
-V auto_37(resolve)
-N auto_38
-V auto_39("b")
+V auto_31("create_node")
+V auto_32(resolve)
+V auto_33("integer_addition")
+V auto_34(constant)
+N auto_35
+V auto_36(call)
+V auto_37(access)
+V auto_38(resolve)
+N auto_39
 V auto_4(global)
-V auto_40(constant)
-V auto_41(4)
-N auto_42
-V auto_43("a")
-V auto_44(constant)
-V auto_45(3)
+V auto_40("b")
+V auto_41(constant)
+V auto_42(2)
+V auto_43(call)
+V auto_44(access)
+V auto_45(resolve)
 N auto_46
-V auto_47("a")
+V auto_47("b")
 V auto_48(constant)
-V auto_49(1)
+V auto_49(4)
 V auto_5(assign)
-V auto_50(resolve)
-V auto_51("main")
+N auto_50
+V auto_51("a")
+V auto_52(constant)
+V auto_53(3)
+N auto_54
+V auto_55("a")
+V auto_56(constant)
+V auto_57(1)
+V auto_58(resolve)
+V auto_59("main")
 V auto_6(global)
 V auto_7(assign)
 V auto_8(global)
 V auto_9(assign)
 D auto_initial_IP,"next",auto_1
-D auto_initial_IP,"var",auto_51
+D auto_initial_IP,"var",auto_59
 D auto_1,"next",auto_2
-D auto_1,"value",auto_26
-D auto_1,"var",auto_50
-D auto_10,"node",auto_11
+D auto_1,"value",auto_34
+D auto_1,"var",auto_58
+D auto_10,"func",auto_11
+D auto_11,"var",auto_12
 D auto_12,"var",auto_13
-D auto_14,"node",auto_15
-D auto_16,"var",auto_17
-D auto_18,"node",auto_19
+D auto_14,"var",auto_15
+D auto_16,"func",auto_17
+D auto_17,"var",auto_18
+D auto_18,"var",auto_19
 D auto_2,"next",auto_3
-D auto_2,"var",auto_25
+D auto_2,"var",auto_33
 D auto_20,"var",auto_21
-D auto_22,"node",auto_23
+D auto_22,"func",auto_23
+D auto_23,"var",auto_24
 D auto_24,"var",auto_25
-D auto_26,"node",auto_27
-D auto_27,"body",auto_28
+D auto_26,"var",auto_27
 D auto_28,"func",auto_29
-D auto_28,"last_param",auto_31
-D auto_28,"next",auto_35
-D auto_28,"params",auto_46
 D auto_29,"var",auto_30
 D auto_3,"next",auto_4
-D auto_3,"value",auto_22
-D auto_3,"var",auto_24
-D auto_30,"var",auto_25
-D auto_31,"name",auto_32
-D auto_31,"value",auto_33
-D auto_33,"node",auto_34
-D auto_35,"func",auto_36
-D auto_35,"last_param",auto_38
-D auto_35,"params",auto_42
-D auto_36,"var",auto_37
-D auto_37,"var",auto_17
-D auto_38,"name",auto_39
-D auto_38,"value",auto_40
+D auto_3,"value",auto_28
+D auto_3,"var",auto_32
+D auto_30,"var",auto_31
+D auto_32,"var",auto_33
+D auto_34,"node",auto_35
+D auto_35,"body",auto_36
+D auto_36,"func",auto_37
+D auto_36,"last_param",auto_39
+D auto_36,"next",auto_43
+D auto_36,"params",auto_54
+D auto_37,"var",auto_38
+D auto_38,"var",auto_33
+D auto_39,"name",auto_40
+D auto_39,"value",auto_41
 D auto_4,"next",auto_5
-D auto_4,"var",auto_21
-D auto_40,"node",auto_41
-D auto_42,"name",auto_43
-D auto_42,"next_param",auto_38
-D auto_42,"value",auto_44
-D auto_44,"node",auto_45
+D auto_4,"var",auto_27
+D auto_41,"node",auto_42
+D auto_43,"func",auto_44
+D auto_43,"last_param",auto_46
+D auto_43,"params",auto_50
+D auto_44,"var",auto_45
+D auto_45,"var",auto_21
 D auto_46,"name",auto_47
-D auto_46,"next_param",auto_31
 D auto_46,"value",auto_48
 D auto_48,"node",auto_49
 D auto_5,"next",auto_6
-D auto_5,"value",auto_18
-D auto_5,"var",auto_20
-D auto_50,"var",auto_51
+D auto_5,"value",auto_22
+D auto_5,"var",auto_26
+D auto_50,"name",auto_51
+D auto_50,"next_param",auto_46
+D auto_50,"value",auto_52
+D auto_52,"node",auto_53
+D auto_54,"name",auto_55
+D auto_54,"next_param",auto_39
+D auto_54,"value",auto_56
+D auto_56,"node",auto_57
+D auto_58,"var",auto_59
 D auto_6,"next",auto_7
-D auto_6,"var",auto_17
+D auto_6,"var",auto_21
 D auto_7,"next",auto_8
-D auto_7,"value",auto_14
-D auto_7,"var",auto_16
+D auto_7,"value",auto_16
+D auto_7,"var",auto_20
 D auto_8,"next",auto_9
-D auto_8,"var",auto_13
+D auto_8,"var",auto_15
 D auto_9,"value",auto_10
-D auto_9,"var",auto_12
+D auto_9,"var",auto_14