Lard Execution Environment

Core Module

The core commands are always available.

li_load_path (variable)
This list contains the directories searched for li modules.

li_modules (variable)
This list contains the names of modules currently loaded.

li_require module (function)
Locate and load the specified module, if it is not already loaded.

quit (function)
Terminate the program.

bci_filename (variable)
The name of the currently loaded bcode file, if any. If no bcode file is loaded it equals the empty string.

bci_basename (variable)
The basename of the currently loaded bcode file, if any. If no bcode file is loaded it is undefined.

bci_run (command)
Run the currently loaded bcode program.

bci_reload (command)
Reset the bcode interpreter and reload it from $bci_filename.

bci_load name (command)
Load the specified file into the bcode interpreter. (Note that it is the caller's responsibility to update bci_filename and bci_basename).

li_load name (function)
Do not use this function, use li_require instead.

bci_kill (command)
Reset the bcode interpreter. This is currently only partially implemented; although it appears to work most of the memory allocated by the bcode program is not freed. Use with caution.

bci_exec (command)
Do not use this function, call bci_run instead.

bci_debug (variable)
Set to enable bcode debugging output (like the old li's -d flag). Each bcode instruction that is executed is listed on standard output. To get meaningful symbols in the output compile with the -syms flag.

bci_ready (variable)
Set when a program is loaded into the interpreter and cleared when the program terminates or is killed.

bci_current_thread (variable)
The thread number (tid) of the currently executing thread.