ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/microscheme/scheme.c
(Generate patch)

Comparing cvsroot/microscheme/scheme.c (file contents):
Revision 1.48 by root, Mon Nov 30 13:07:34 2015 UTC vs.
Revision 1.50 by root, Tue Dec 1 00:47:54 2015 UTC

79 79
80#define BACKQUOTE '`' 80#define BACKQUOTE '`'
81#define WHITESPACE " \t\r\n\v\f" 81#define WHITESPACE " \t\r\n\v\f"
82#define DELIMITERS "()\";" WHITESPACE 82#define DELIMITERS "()\";" WHITESPACE
83 83
84#define NIL (&SCHEME_V->xNIL) //TODO: make this 0? 84#define NIL (&SCHEME_V->xNIL)
85#define S_T (&SCHEME_V->xT) //TODO: magic ptr value? 85#define S_T (&SCHEME_V->xT)
86#define S_F (&SCHEME_V->xF) //TODO: magic ptr value? 86#define S_F (&SCHEME_V->xF)
87#define S_SINK (&SCHEME_V->xsink) 87#define S_SINK (&SCHEME_V->xsink)
88#define S_EOF (&SCHEME_V->xEOF_OBJ) 88#define S_EOF (&SCHEME_V->xEOF_OBJ)
89 89
90#if !USE_MULTIPLICITY 90#if !USE_MULTIPLICITY
91static scheme sc; 91static scheme sc;
5673scheme_init (SCHEME_P) 5673scheme_init (SCHEME_P)
5674{ 5674{
5675 int i, n = sizeof (dispatch_table) / sizeof (dispatch_table[0]); 5675 int i, n = sizeof (dispatch_table) / sizeof (dispatch_table[0]);
5676 pointer x; 5676 pointer x;
5677 5677
5678 /* this memset is not strictly correct, as we assume (intcache)
5679 * that memset 0 will also set pointers to 0, but memset does
5680 * of course not guarantee that. screw such systems.
5681 */
5678 memset (SCHEME_V, 0, sizeof (*SCHEME_V));//TODO !iso c 5682 memset (SCHEME_V, 0, sizeof (*SCHEME_V));
5679 5683
5680 num_set_fixnum (num_zero, 1); 5684 num_set_fixnum (num_zero, 1);
5681 num_set_ivalue (num_zero, 0); 5685 num_set_ivalue (num_zero, 0);
5682 num_set_fixnum (num_one, 1); 5686 num_set_fixnum (num_one, 1);
5683 num_set_ivalue (num_one, 1); 5687 num_set_ivalue (num_one, 1);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines