file/eval-module

path args


Summary

Evaluate a Nujel source file in the current context

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 'module/resolve-string))
(    2 ($get/val 'cat))
(    4 ($get/val 'path/without-extension))
(    6 ($get/val 'path))
(    8 ($apply 1))
(   10 ($apply 1))
(   12 ($get/val 'path/working-directory))
(   14 ($apply 0))
(   16 ($apply 2))
(   18 ($det/val 'mod-name))
(   20 ($drop))
(   21 ($get/val 'module/load))
(   23 ($get/val 'mod-name))
(   25 ($apply 1))
(   27 ($det/val 'mod))
(   29 ($drop))
(   30 ($push/val :environment))
(   32 ($get/val 'type-of))
(   34 ($get/val 'mod))
(   36 ($apply 1))
(   38 ($=))
(   39 ($jf* 7))
(   42 ($push/nil))
(   43 ($jmp* 6))
(   46 ($get/val 'mod))
(   48 ($ret))
(   49 ($drop))
(   50 ($get/val 'resolve))
(   52 ($push/val 'exports))
(   54 ($get/val 'mod))
(   56 ($apply 2))
(   58 ($det/val 'exports))
(   60 ($drop))
(   61 ($get/val 'exports))
(   63 ($jf* 7))
(   66 ($push/nil))
(   67 ($jmp* 27))
(   70 ($get/val 'throw))
(   72 ($get/val 'list))
(   74 ($get/val 'cat))
(   76 ($push/val Couldn't load ))
(   78 ($get/val 'path))
(   80 ($push/val  as a module since it has no exports))
(   82 ($apply 3))
(   84 ($push/nil))
(   85 ($push/nil))
(   86 ($get/val 'current-lambda))
(   88 ($apply 0))
(   90 ($apply 4))
(   92 ($apply 1))
(   94 ($drop))
(   95 ($get/val 'tree/has?))
(   97 ($get/val 'exports))
(   99 ($push/val :main))
(  101 ($apply 2))
(  103 ($jf* 18))
(  106 ($get/val 'tree/ref))
(  108 ($get/val 'exports))
(  110 ($push/val :main))
(  112 ($apply 2))
(  114 ($get/val 'args))
(  116 ($apply 1))
(  118 ($jmp* 4))
(  121 ($push/nil))
(  122 ($ret))