1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-07-12 20:20:29 +02:00

* src/vm_system.c (push_list): New instruction.

* src/vm_engine.c (VM_NAME): Don\'t validate VM and PROGRAM.
* src/vm.c (scm_vm_apply): New procedure.
(apply_program): New function.
(init_program_type): Set the apply function for the program type.

* src/vm.c (lookup_variable): Use scm_eval_closure_lookup.
This commit is contained in:
Keisuke Nishida 2000-09-10 22:36:28 +00:00
parent 4405d598ef
commit 2640369017
3 changed files with 67 additions and 7 deletions

View file

@ -94,6 +94,14 @@ SCM_DEFINE_INSTRUCTION (push, "%push", INST_NONE)
NEXT;
}
SCM_DEFINE_INSTRUCTION (push_list, "%push-list", INST_SCM)
{
SCM list;
for (list = FETCH (); SCM_NIMP (list); list = SCM_CDR (list))
PUSH (SCM_CAR (list));
NEXT;
}
SCM_DEFINE_INSTRUCTION (pushc, "%pushc", INST_SCM)
{
PUSH (FETCH ());