guile-devel
[Top][All Lists]
Advanced

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

Re: [Guile-commits] GNU Guile branch, master, updated. release_1-9-8-23-


From: Ludovic Courtès
Subject: Re: [Guile-commits] GNU Guile branch, master, updated. release_1-9-8-23-gea6b18e
Date: Sun, 28 Feb 2010 22:31:56 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

Hello!

(Sorry for the late & light review...)

"Andy Wingo" <address@hidden> writes:

> diff --git a/libguile/fluids.h b/libguile/fluids.h
> index 7aefd47..0d61fd2 100644
> --- a/libguile/fluids.h
> +++ b/libguile/fluids.h
> @@ -54,13 +54,8 @@
>     grow.
>   */
>  
> -/* The fastest way to acces/modify the value of a fluid.  These macros
> -   do no error checking at all.  The first argument is the index
> -   number of the fluid, obtained via SCM_FLUID_NUM, not the fluid
> -   itself.  You must make sure that the fluid remains protected as
> -   long you use its number since numbers of unused fluids are reused
> -   eventually.
> -*/
> +#define SCM_I_FLUID_P(x)          (!SCM_IMP (x) && SCM_TYP7 (x) == 
> scm_tc7_fluid)

How about renaming it to ‘SCM_FLUID_P’ and making it public?

> +#define SCM_I_FLUID_NUM(x)        ((size_t)SCM_CELL_WORD_1(x))

Could be in #ifdef BUILDING_LIBGUILE?

> diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c
> index 75dd613..5d1e1d6 100644
> --- a/libguile/vm-engine.c
> +++ b/libguile/vm-engine.c
> @@ -47,6 +47,7 @@ VM_NAME (SCM vm, SCM program, SCM *argv, int nargs)
>    SCM *objects = NULL;                       /* constant objects */
>    size_t object_count = 0;              /* length of OBJECTS */
>    SCM *stack_limit = vp->stack_limit;        /* stack limit address */
> +  SCM dynstate = SCM_I_CURRENT_THREAD->dynamic_state;

Out of curiosity, what effect does this have on performance?

> +  (<dynref> fluid)
> +  (<dynset> fluid exp)

At first sight ‘fluid-ref’ and ‘fluid-set’ would seem more natural names
to me.  What do you think?

Thanks,
Ludo’.




reply via email to

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