MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: part assigned sequence behavior puzzling


As stated in the documentation for sequence: assignment and replacement functions have attribute SequenceHold

Attributes[Set]

{HoldFirst,Protected,SequenceHold}

tmp = Range[15]
tmp[[7]] = Sequence @@ Range[2];
tmp[[7]] = Sequence @@ Range[2];
tmp[[7]] = Sequence @@ Range[2];
tmp

{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}

{1,2,3,4,5,6,1,2,8,9,10,11,12,13,14,15}

tmp = Range[15]
tmp[[7]] = Sequence @@ Range[2];
tmp = tmp;
tmp[[7]] = Sequence @@ Range[2];
tmp = tmp;
tmp[[7]] = Sequence @@ Range[2];
tmp

{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}

{1,2,3,4,5,6,1,2,2,2,8,9,10,11,12,13,14,15}


Bob Hanlon

---- mkr <mileskrains at gmail.com> wrote: 

=============
I am puzzled by the following behavior:

tmp = Range[15]
tmp[[7]] = Sequence @@ Range[2];
tmp[[7]] = Sequence @@ Range[2];
tmp[[7]] = Sequence @@ Range[2];
tmp

yields

{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
{1, 2, 3, 4, 5, 6, 1, 2, 8, 9, 10, 11, 12, 13, 14, 15}

I would have expected the repeated assignment to have a repeated
effect, thus obtaining

{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
{1, 2, 3, 4, 5, 6, 1, 2, 2, 2, 8, 9, 10, 11, 12, 13, 14, 15}

Where/why am I wrong?





  • Prev by Date: Solve how to eliminate variable
  • Next by Date: Re: When Wolfram's technical support cannot help
  • Previous by thread: Re: part assigned sequence behavior puzzling
  • Next by thread: Re: part assigned sequence behavior puzzling