guile-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

guile/guile-core/libguile ChangeLog eval.c goop...


From: Dirk Herrmann
Subject: guile/guile-core/libguile ChangeLog eval.c goop...
Date: Sun, 04 May 2003 04:36:56 -0400

CVSROOT:        /cvsroot/guile
Module name:    guile
Changes by:     Dirk Herrmann <address@hidden>  03/05/04 04:36:56

Modified files:
        guile-core/libguile: ChangeLog eval.c goops.c macros.c macros.h 

Log message:
        The purpose of this patch is to make guile's internal memoizers
        distinguishable from memoizing macros created on the scheme level
        or from user provided primitive memoizing macros.  The reason is,
        that the internal memoizers are the only ones that are allowed to
        transform their scheme input into memoizer byte code, while all
        other memoizing macros may only transform scheme code into new
        scheme code.
        
        To achieve this, a new macro type 'builtin-macro!' is introduced.
        Currently, 'builtin-macro!'s are handled as memoizing macros, but
        this will change when the memoizer and executor are separated.
        
        * macros.[ch] (scm_i_makbimacro): New.
        
        * macros.h (SCM_BUILTIN_MACRO_P): New.
        
        * macros.c (macro_print, scm_macro_type): Support builtin-macro!s.
        
        * eval.c, goops.c: All of guile's primitive memoizing macros are
        primitive builtin-macros now.
        
        * eval.c (scm_macroexp, SCM_CEVAL): Make sure the primitive
        builtin-macros are handled equally to memoizing macros.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile/guile-core/libguile/ChangeLog.diff?tr1=1.1847&tr2=1.1848&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile/guile-core/libguile/eval.c.diff?tr1=1.303&tr2=1.304&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile/guile-core/libguile/goops.c.diff?tr1=1.69&tr2=1.70&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile/guile-core/libguile/macros.c.diff?tr1=1.38&tr2=1.39&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile/guile-core/libguile/macros.h.diff?tr1=1.14&tr2=1.15&r1=text&r2=text





reply via email to

[Prev in Thread] Current Thread [Next in Thread]