range
end start stepSummary
Return a list containing values from START (inclusive) to END (exclusive) by STEP
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 'end)) ( 2 ($jf* 7)) ( 5 ($push/nil)) ( 6 ($jmp* 20)) ( 9 ($get/val 'throw)) ( 11 ($get/val 'list)) ( 13 ($push/val :arity-error)) ( 15 ($push/val (range) needs at least a specific end)) ( 17 ($push/nil)) ( 18 ($get/val 'current-lambda)) ( 20 ($apply 0)) ( 22 ($apply 4)) ( 24 ($apply 1)) ( 26 ($drop)) ( 27 ($get/val 'start)) ( 29 ($jf* 7)) ( 32 ($push/nil)) ( 33 ($jmp* 7)) ( 36 ($push/int/byte 0)) ( 38 ($set/val 'start)) ( 40 ($drop)) ( 41 ($get/val 'step)) ( 43 ($jf* 7)) ( 46 ($push/nil)) ( 47 ($jmp* 7)) ( 50 ($push/int/byte 1)) ( 52 ($set/val 'step)) ( 54 ($drop)) ( 55 ($get/val 'step)) ( 57 ($push/val 0.0)) ( 59 ($>=)) ( 60 ($jf* 8)) ( 63 ($get/val '<)) ( 65 ($jmp* 5)) ( 68 ($get/val '>)) ( 70 ($det/val 'pred)) ( 72 ($drop)) ( 73 ($push/nil)) ( 74 ($det/val 'ret)) ( 76 ($drop)) ( 77 ($push/nil)) ( 78 ($jmp* 19)) ( 81 ($drop)) ( 82 ($get/val 'start)) ( 84 ($get/val 'ret)) ( 86 ($cons)) ( 87 ($set/val 'ret)) ( 89 ($drop)) ( 90 ($get/val 'start)) ( 92 ($get/val 'step)) ( 94 ($add)) ( 95 ($set/val 'start)) ( 97 ($get/val 'pred)) ( 99 ($get/val 'start)) ( 101 ($get/val 'end)) ( 103 ($apply 2)) ( 105 ($jt* -24)) ( 108 ($drop)) ( 109 ($get/val 'nreverse)) ( 111 ($get/val 'ret)) ( 113 ($apply 1)) ( 115 ($ret))