Gabriele, These considerations about lit words were really clarifying to me also
Thank you 2005/10/27, Gabriele Santilli <[EMAIL PROTECTED]>: > > > Hi Silvia, > > On Thursday, October 27, 2005, 11:34:24 AM, you wrote: > > SB> Now if I do this: > > >>> set a "" > SB> == "" > > SB> Why if I make this: > > >>> a > SB> == b > >>> b > SB> == "" > > SB> I've this results? Why b got the value set for a? And a is still b? > > Let me try with an example. > > >> my-set: func [word value] [?? word ?? value] > >> a: 'b > == b > >> my-set a "" > word: b > value: "" > == "" > >> my-set 'a "" > word: a > value: "" > == "" > > As you can see, the actual arguments you are passing to SET are B > and "", so it sets B to "". SET does not even see A; that's > because arguments are evaluated, and A's value is B. If you want > to pass A, instead of the value of A, you need to use 'A. > > This is the same thing that happens when you write something like: > > >> my-set 'a 1 + 1 > word: a > value: 2 > == 2 > > The function does not see "1 + 1", it gets the result of > evaluating "1 + 1"; in the same way, you don't get A above, but > the result of evaluating A, which is B. > > Hope this makes things a little bit clearer... > > Regards, > Gabriele. > -- > Gabriele Santilli <[EMAIL PROTECTED]> --- http://www.rebol.com/ > Colella Chiara software division --- http://www.colellachiara.com/ > > -- > To unsubscribe from the list, just send an email to > lists at rebol.com <http://rebol.com> with unsubscribe as the subject. > > -- *:-.,_,.-:*'``'*:-.,_,.-: Carlos Lorenz *:-.,_,.-:*'``'*:-.,_,.-: -- To unsubscribe from the list, just send an email to lists at rebol.com with unsubscribe as the subject.
