guile-user
[Top][All Lists]
Advanced

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

Re: Gurus? Care to re-explain the absense of gh_set_x() for me?


From: Neil Jerram
Subject: Re: Gurus? Care to re-explain the absense of gh_set_x() for me?
Date: 16 Jul 2001 19:53:22 +0100
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

>>>>> "Miroslav" == Miroslav Silovic <address@hidden> writes:

    Miroslav> Actually gh_set_x changes the _binding_ of a variable,
    Miroslav> rather than modifying the value it's bound
    Miroslav> to.

Hmm.  That's not quite right, according to the usual terminology (at
least as I understand it).

In Scheme, a variable name is bound to a location (or `cell'), and a
value can be stored in that location.  The binding between a name and
a location never changes (modulo effects of shadowing and going out of
scope).  `(set! NAME VAL)' replaces the existing value in the location
bound to NAME by the new value VAL.

(And, of course, gh_set_x does nothing, because it doesn't exist :-).)

    Miroslav>     Basically, a variable in Scheme is simply a name for
    Miroslav> a particular writable cell that contains one SCM, and
    Miroslav> SCM itself is _not_ a cell (in particular, integers in
    Miroslav> Guile are not represented by pointers to a box, they're
    Miroslav> recognised by a particular bit-pattern of a SCM value).

Hang on, didn't I just say that! :-)  (But the two halves of your post
rather contradicted each other IMO.)

        Neil




reply via email to

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