mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-19 02:00:26 +02:00
* reimplementation of values, call-with-values as primitives:
* values.c, values.h: new files. use a struct to contain multiple values, similar to the previous Scheme-level implementation. * Makefile.am: add values.c, values.h, values.x. * continuations.c (continuation_apply): support R5RS multiple value continuations. * init.c: call scm_init_values. * struct.h: define SCM_SET_STRUCT_PRINTER.
This commit is contained in:
parent
5f144b105d
commit
ce21243418
7 changed files with 242 additions and 11 deletions
|
@ -132,6 +132,7 @@
|
|||
#include "libguile/tag.h"
|
||||
#include "libguile/throw.h"
|
||||
#include "libguile/unif.h"
|
||||
#include "libguile/values.h"
|
||||
#include "libguile/variable.h"
|
||||
#include "libguile/vectors.h"
|
||||
#include "libguile/version.h"
|
||||
|
@ -491,7 +492,7 @@ scm_init_guile_1 (SCM_STACKITEM *base)
|
|||
scm_init_subr_table ();
|
||||
scm_environments_prehistory (); /* create the root environment */
|
||||
scm_init_continuations ();
|
||||
scm_init_root ();
|
||||
scm_init_root (); /* requires continuations */
|
||||
#ifdef USE_THREADS
|
||||
scm_init_threads (base);
|
||||
#endif
|
||||
|
@ -552,11 +553,12 @@ scm_init_guile_1 (SCM_STACKITEM *base)
|
|||
scm_init_srcprop ();
|
||||
#endif
|
||||
scm_init_stackchk ();
|
||||
scm_init_struct (); /* Requires struct */
|
||||
scm_init_stacks ();
|
||||
scm_init_struct ();
|
||||
scm_init_stacks (); /* Requires struct */
|
||||
scm_init_strports ();
|
||||
scm_init_symbols ();
|
||||
scm_init_tag ();
|
||||
scm_init_values (); /* Requires struct */
|
||||
scm_init_load ();
|
||||
scm_init_objects (); /* Requires struct */
|
||||
scm_init_print (); /* Requires struct */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue