cat

l


Summary

ConCATenates all arguments into a single string

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 'make-string-output-port))
(    2 ($apply 0))
(    4 ($det/val 'p))
(    6 ($drop))
(    7 ($let))
(    8 ($get/val 'l))
(   10 ($det/val 'ΓεnΣym-2))
(   12 ($drop))
(   13 ($push/nil))
(   14 ($jmp* 98))
(   17 ($drop))
(   18 ($push/val :pair))
(   20 ($get/val 'type-of))
(   22 ($get/val 'ΓεnΣym-2))
(   24 ($apply 1))
(   26 ($=))
(   27 ($jf* 7))
(   30 ($push/nil))
(   31 ($jmp* 21))
(   34 ($get/val 'throw))
(   36 ($get/val 'list))
(   38 ($push/val :type-error))
(   40 ($push/val Improper list detected, please provide a proper list instead))
(   42 ($get/val 'l))
(   44 ($get/val 'current-lambda))
(   46 ($apply 0))
(   48 ($apply 4))
(   50 ($apply 1))
(   52 ($drop))
(   53 ($get/val 'type-of))
(   55 ($get/val 'ΓεnΣym-2))
(   57 ($apply 1))
(   59 ($push/val :pair))
(   61 ($=))
(   62 ($jf* 7))
(   65 ($push/nil))
(   66 ($jmp* 21))
(   69 ($get/val 'throw))
(   71 ($get/val 'list))
(   73 ($push/val :type-error))
(   75 ($push/val Expected a value of type :pair))
(   77 ($get/val 'ΓεnΣym-2))
(   79 ($get/val 'current-lambda))
(   81 ($apply 0))
(   83 ($apply 4))
(   85 ($apply 1))
(   87 ($drop))
(   88 ($get/val 'ΓεnΣym-2))
(   90 ($car))
(   91 ($det/val 'c))
(   93 ($drop))
(   94 ($get/val 'p))
(   96 ($push/val 'block-write))
(   98 ($get/val 'string/display))
(  100 ($get/val 'c))
(  102 ($apply 1))
(  104 ($apply 2))
(  106 ($drop))
(  107 ($get/val 'ΓεnΣym-2))
(  109 ($cdr))
(  110 ($set/val 'ΓεnΣym-2))
(  112 ($get/val 'ΓεnΣym-2))
(  114 ($jt* -97))
(  117 ($drop))
(  118 ($get/val 'p))
(  120 ($push/val 'return-string))
(  122 ($apply 1))
(  124 ($closure/pop))
(  125 ($ret))