Piinit

Provides methods that have to be called before using pilisp. More...

Functions

void init_pi ()
 Initializes the variables and the structures that pilisp needs in order to properly work. Always call this function before using pilisp core functions. More...
 
void init_builtin_macros ()
 Initializes the array of builtin macros. More...
 
void init_builtin_lambdas ()
 Initializes the array of builtin lambdas. More...
 
void init_stack ()
 Initializes the variables to handle the stack. More...
 
void init_env ()
 Provides some non-builtin definitions, like 1+. More...
 
char * get_compiler_source_hardcoded ()
 Get the compiler source hardcoded. More...
 
void free_pi ()
 
void free_builtin_symbols ()
 

Variables

cell BUILTIN_LAMBDAS [N_BUILTIN_LAMBDA]
 
size_t builtin_lambdas_index
 
cell BUILTIN_MACROS [N_BUILTIN_MACRO]
 
size_t builtin_macros_index
 
cellsymbol_car
 
cellsymbol_cdr
 
cellsymbol_cons
 
cellsymbol_atom
 
cellsymbol_eq
 
cellsymbol_eq_math
 
cellsymbol_true
 
cellsymbol_set
 
cellsymbol_addition
 
cellsymbol_subtraction
 
cellsymbol_multiplication
 
cellsymbol_division
 
cellsymbol_lambda
 
cellsymbol_label
 
cellsymbol_load
 
cellsymbol_or
 
cellsymbol_and
 
cellsymbol_not
 
cellsymbol_greater
 
cellsymbol_greater_equal
 
cellsymbol_less
 
cellsymbol_less_equal
 
cellsymbol_length
 
cellsymbol_member
 
cellsymbol_nth
 
cellsymbol_file_ended
 
cellsymbol_env
 
cellsymbol_mem_dump
 
cellsymbol_collect_garbage
 
cellsymbol_dotimes
 
cellsymbol_list
 
cellsymbol_bye
 
cellsymbol_macro
 
cellsymbol_integerp
 
cellsymbol_symbolp
 
cellsymbol_write
 
cellsymbol_subseq
 
cellsymbol_reverse
 
cellsymbol_concatenate
 
cellsymbol_append
 
cellsymbol_lasm
 
cellsymbol_string
 
cellsymbol_setq
 
cellsymbol_let
 
cellsymbol_timer
 
cellsymbol_defun
 
cellsymbol_map
 
cellsymbol_cond
 
cellsymbol_quote
 
cellsymbol_asm
 
cellsymbol_compile
 

Detailed Description

Provides methods that have to be called before using pilisp.

Function Documentation

void free_builtin_symbols ( )
void free_pi ( )
char* get_compiler_source_hardcoded ( )

Get the compiler source hardcoded.

Returns
char* string representing the compiler source code
void init_builtin_lambdas ( )

Initializes the array of builtin lambdas.

void init_builtin_macros ( )

Initializes the array of builtin macros.

void init_env ( )

Provides some non-builtin definitions, like 1+.

void init_pi ( )

Initializes the variables and the structures that pilisp needs in order to properly work. Always call this function before using pilisp core functions.

void init_stack ( )

Initializes the variables to handle the stack.

Variable Documentation

cell BUILTIN_LAMBDAS[N_BUILTIN_LAMBDA]
size_t builtin_lambdas_index
cell BUILTIN_MACROS[N_BUILTIN_MACRO]
size_t builtin_macros_index
cell* symbol_addition
cell* symbol_and
cell* symbol_append
cell* symbol_asm
cell* symbol_atom
cell* symbol_bye
cell* symbol_car
cell* symbol_cdr
cell* symbol_collect_garbage
cell* symbol_compile
cell * symbol_concatenate
cell* symbol_cond
cell* symbol_cons
cell* symbol_defun
cell* symbol_division
cell* symbol_dotimes
cell* symbol_env
cell* symbol_eq
cell* symbol_eq_math
cell* symbol_file_ended
cell* symbol_greater
cell* symbol_greater_equal
cell* symbol_integerp
cell* symbol_label
cell* symbol_lambda
cell* symbol_lasm
cell* symbol_length
cell* symbol_less
cell* symbol_less_equal
cell* symbol_let
cell* symbol_list
cell* symbol_load
cell* symbol_macro
cell* symbol_map
cell* symbol_mem_dump
cell* symbol_member
cell* symbol_multiplication
cell* symbol_not
cell* symbol_nth
cell* symbol_or
cell* symbol_quote
cell* symbol_reverse
cell* symbol_set
cell* symbol_setq
cell* symbol_string
cell* symbol_subseq
cell* symbol_subtraction
cell* symbol_symbolp
cell* symbol_timer
cell* symbol_true
cell* symbol_write