tree/merge
a bSummary
Merge two trees together, if a key is contained in both trees the on in B gets priority
Bytecode
Probably only interesting to you if you want to understand more about the Nujel VM or care very much about performance.
( 0 ($get/val 'b)) ( 2 ($jf* 7)) ( 5 ($push/nil)) ( 6 ($jmp* 23)) ( 9 ($get/val 'a)) ( 11 ($jf* 12)) ( 14 ($get/val 'tree/dup)) ( 16 ($get/val 'a)) ( 18 ($apply 1)) ( 20 ($jmp* 8)) ( 23 ($get/val 'tree/new)) ( 25 ($push/nil)) ( 26 ($apply 1)) ( 28 ($ret)) ( 29 ($drop)) ( 30 ($get/val 'a)) ( 32 ($jf* 7)) ( 35 ($push/nil)) ( 36 ($jmp* 10)) ( 39 ($get/val 'tree/dup)) ( 41 ($get/val 'b)) ( 43 ($apply 1)) ( 45 ($ret)) ( 46 ($drop)) ( 47 ($get/val 'tree/dup)) ( 49 ($get/val 'a)) ( 51 ($apply 1)) ( 53 ($det/val 'ret)) ( 55 ($drop)) ( 56 ($let)) ( 57 ($get/val 'tree/keys)) ( 59 ($get/val 'b)) ( 61 ($apply 1)) ( 63 ($det/val 'ΓεnΣym-3)) ( 65 ($drop)) ( 66 ($push/nil)) ( 67 ($jmp* 106)) ( 70 ($drop)) ( 71 ($push/val :pair)) ( 73 ($get/val 'type-of)) ( 75 ($get/val 'ΓεnΣym-3)) ( 77 ($apply 1)) ( 79 ($=)) ( 80 ($jf* 7)) ( 83 ($push/nil)) ( 84 ($jmp* 25)) ( 87 ($get/val 'throw)) ( 89 ($get/val 'list)) ( 91 ($push/val :type-error)) ( 93 ($push/val Improper list detected, please provide a proper list instead)) ( 95 ($get/val 'tree/keys)) ( 97 ($get/val 'b)) ( 99 ($apply 1)) ( 101 ($get/val 'current-lambda)) ( 103 ($apply 0)) ( 105 ($apply 4)) ( 107 ($apply 1)) ( 109 ($drop)) ( 110 ($get/val 'type-of)) ( 112 ($get/val 'ΓεnΣym-3)) ( 114 ($apply 1)) ( 116 ($push/val :pair)) ( 118 ($=)) ( 119 ($jf* 7)) ( 122 ($push/nil)) ( 123 ($jmp* 21)) ( 126 ($get/val 'throw)) ( 128 ($get/val 'list)) ( 130 ($push/val :type-error)) ( 132 ($push/val Expected a value of type :pair)) ( 134 ($get/val 'ΓεnΣym-3)) ( 136 ($get/val 'current-lambda)) ( 138 ($apply 0)) ( 140 ($apply 4)) ( 142 ($apply 1)) ( 144 ($drop)) ( 145 ($get/val 'ΓεnΣym-3)) ( 147 ($car)) ( 148 ($det/val 'k)) ( 150 ($drop)) ( 151 ($get/val 'tree/set!)) ( 153 ($get/val 'ret)) ( 155 ($get/val 'k)) ( 157 ($get/val 'tree/ref)) ( 159 ($get/val 'b)) ( 161 ($get/val 'k)) ( 163 ($apply 2)) ( 165 ($apply 3)) ( 167 ($drop)) ( 168 ($get/val 'ΓεnΣym-3)) ( 170 ($cdr)) ( 171 ($set/val 'ΓεnΣym-3)) ( 173 ($get/val 'ΓεnΣym-3)) ( 175 ($jt* -105)) ( 178 ($drop)) ( 179 ($get/val 'ret)) ( 181 ($closure/pop)) ( 182 ($ret))