[REBOL] Re: On mutability and sameness
From: gjones05:mail:orion at: 5-Jun-2001 17:35
From: <[Sanghabum--aol--com]>
> Hi Scott,
>
> > One might argue that this description might be worded more clearly,
but
> > poke is doing what its says it is doing:
> >
> > mytuple: 1.2.3.4.5 ; == 1.2.3.4.5
> > poke mytuple 3 88 ; == 1.2.88.4.5
> > ;it presents a changed value, but doesn't "change" mytuple
> > mytuple ; == 1.2.3.4.5
> > mytuple: poke mytuple 3 88 ; == 1.2.88.4.5
> > mytuple ; == 1.2.88.4.5
>
> Well, it is certainly odd, and non-orthogonal. For example, the same
Poke on
> a Block or an Object does change it:
>
> >> myblock: copy [1 2 3 4 5]
> == [1 2 3 4 5]
> >> poke myblock 3 99
> == [1 2 99 4 5]
> >> myblock
> == [1 2 99 4 5]
>>
> But Poke on a Tuple or Money does not chance the underlying item.
>
> Poke accepts any of these data types: series money date time object
port
> tuple. If it was orthogonal, I wouldn't have to try each type to see
if it
> changes the value or not. Any guesses what it does to a Date or a
Port?
Your point is well-taken, and needless to say I have no explanation. I
thought I recognized it as being a similar oversite that I had made, but
this one is different. Sorry to dilute the point you were making.
:-)
--Scott Jones