Previous variable affects "/."
- To: mathgroup@smc.vnet.net
- Subject: [mg11236] Previous variable affects "/."
- From: Vilis Nams <vnams@nsac.ns.ca>
- Date: Mon, 2 Mar 1998 23:11:33 -0500
- Organization: ISINet, Nova Scotia
I am using "/." to change expressions, as follows: In[1]: {1, 2}, {3, 4}, {5, 6}, {7, 8}}; In[2]: /. {x_, y_} -> {x} Out[2]:{1}, {3}, {5}, {7}} The results are expected. But, if I now define x to be something already, e.g. In[3]: ; Then, when I do the Replace, Mathematica uses my previously-defined x, as follows : In[4]: /. {x_, y_} -> {x} Out[4]:{7}, {7}, {7}, {7}} I tried to even wrap it inside of a function, to have x as a local variabe, as in: In[5]:[v_] :odule[{x, y}, v /. {x_, y_} -> {x}]; But, it still used the x defined previously: In[6]:[a] Out[6]:ยป7}, {7}, {7}, {7}} This is no problem when I'm just creating and using variables in one session, because I can remember which variables I created. But, I have such Replace statements sprinkled inside of functions that I defined. I cannot remember all the symbols I used in those definitions. Even worse, I may not get an error message - I just may get the wrong result without knowing it. How can I use the Replace and x_, and make sure that previously-defined variables don't influence the results? -------------------- Vilis O. Nams Dept of Biology, NSAC Box 550, Truro, NS, Canada vnams @ nsac.ns.ca -------------------