problem with "concatting variables"



On 26-09-2013 02:10, Stavros Macrakis wrote:
>
> Why infeval?
>
Because that's what Redfern, Chandler and Fell propose in their book and 
I have not been able to find an alternative:

(%i2) b2:4$
(%i3) ev(concat(b,2));
(%o3) b2
(%i4) ev(ev(concat (b,2)));
(%o4) b2
(%i5) ev(concat (b,2),infeval);
(%o5) 4

do you know another way to get the value 4 without using ''(...) ?

Jaime
>
>       -s
>
> On Sep 25, 2013 12:47 PM, "Jaime Villate" <villate at fe.up.pt 
> <mailto:villate at fe.up.pt>> wrote:
>
>     I think that the result Christian was expecting is what you get from:
>
>     for j:1 thru 2 do (
>         concat (b,j) :: 10*j,
>         print (ev (concat (b,j), infeval)));
>
>     There is a very nice old book: Darren Redfern, Edgar Chandler and
>     Richard N. Fell, Macsyma ODE Lab Book, 1998, where the authors use
>     concat() and ''(...) very intensely.
>     They do switch from ''(concat(...)) to ev(concat(...),infeval)
>     inside for loops.
>
>     I do agree that concat(...) and ''(...) should be avoided in favor
>     of other better ways to do the same.
>     Regards,
>     Jaime
>