picore.c File Reference
Include dependency graph for picore.c:
Functions | |
cell * | eval (cell *expression, cell *env) |
Evaluates one sexpression and returns the result. More... | |
cell * | eval_atom (cell *expression, cell *env) |
cell * | eval_atom_function (cell *expression, cell *env) |
cell * | eval_composed_function (cell *expression, cell *env) |
cell * | eval_macro (cell *expression, cell *env) |
cell * | apply (cell *fn, cell *args, cell *env, bool eval_args) |
Applies the function to the args in the environment. More... | |
cell * | evlis (cell *args, cell *env) |
Evaluates the cars of the list in the environment. It's called when a lambda is evaluated: first the list of the arguments of the lambda will be evaluated with this function. More... | |
cell * | evcon (cell *args, cell *env) |
Evaluates the cond-special form. More... | |
cell * | pairlis (cell *symbols_list, cell *values_list, cell *a) |
Creates a new list of pairs symbol-values starting from another. It's used to extend one environment. More... | |
cell * | assoc (cell *symbol, cell *env) |
Associates one symbol to one values in the environment. More... | |
cell * | apply_atom_function (cell *fn, cell *args, cell *env, bool eval_args) |
cell * | apply_composed_function (cell *fn, cell *args, cell *env, bool eval_args) |
cell * | apply_lambda (cell *fn, cell *args, cell *env, bool eval_args) |
cell * | apply_lasm (cell *fn, cell *args, cell *env, bool eval_args) |
cell * | apply_label (cell *fn, cell *args, cell *env, bool eval_args) |
cell * | apply_macro (cell *fn, cell *args, cell *env, bool eval_args) |
cell * | eval_lambda_and_apply (cell *fn, cell *args, cell *env, bool eval_args) |