append

a b


Summary

Appends two lists A and B together

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 ($det/val 'ret))
(    4 ($drop))
(    5 ($get/val 'reverse))
(    7 ($get/val 'a))
(    9 ($apply 1))
(   11 ($set/val 'a))
(   13 ($drop))
(   14 ($let))
(   15 ($get/val 'a))
(   17 ($det/val 'ΓεnΣym-6))
(   19 ($drop))
(   20 ($push/nil))
(   21 ($jmp* 93))
(   24 ($drop))
(   25 ($push/val :pair))
(   27 ($get/val 'type-of))
(   29 ($get/val 'ΓεnΣym-6))
(   31 ($apply 1))
(   33 ($=))
(   34 ($jf* 7))
(   37 ($push/nil))
(   38 ($jmp* 21))
(   41 ($get/val 'throw))
(   43 ($get/val 'list))
(   45 ($push/val :type-error))
(   47 ($push/val Improper list detected, please provide a proper list instead))
(   49 ($get/val 'a))
(   51 ($get/val 'current-lambda))
(   53 ($apply 0))
(   55 ($apply 4))
(   57 ($apply 1))
(   59 ($drop))
(   60 ($get/val 'type-of))
(   62 ($get/val 'ΓεnΣym-6))
(   64 ($apply 1))
(   66 ($push/val :pair))
(   68 ($=))
(   69 ($jf* 7))
(   72 ($push/nil))
(   73 ($jmp* 21))
(   76 ($get/val 'throw))
(   78 ($get/val 'list))
(   80 ($push/val :type-error))
(   82 ($push/val Expected a value of type :pair))
(   84 ($get/val 'ΓεnΣym-6))
(   86 ($get/val 'current-lambda))
(   88 ($apply 0))
(   90 ($apply 4))
(   92 ($apply 1))
(   94 ($drop))
(   95 ($get/val 'ΓεnΣym-6))
(   97 ($car))
(   98 ($det/val 't))
(  100 ($drop))
(  101 ($get/val 't))
(  103 ($get/val 'ret))
(  105 ($cons))
(  106 ($set/val 'ret))
(  108 ($drop))
(  109 ($get/val 'ΓεnΣym-6))
(  111 ($cdr))
(  112 ($set/val 'ΓεnΣym-6))
(  114 ($get/val 'ΓεnΣym-6))
(  116 ($jt* -92))
(  119 ($drop))
(  120 ($get/val 'ret))
(  122 ($closure/pop))
(  123 ($ret))