Re: ReplaceAll in If Statement
- To: mathgroup at smc.vnet.net
- Subject: [mg19519] Re: ReplaceAll in If Statement
- From: Brian Higgins <bghiggins at ucdavis.edu>
- Date: Sun, 29 Aug 1999 03:00:39 -0400
- Organization: Deja.com - Share what you know. Learn what you don't.
- References: <7q20sl$q9i@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
In article <7q20sl$q9i at smc.vnet.net>, "Tom Compton" <comptont at concentric.net> wrote: > In the following sequence I expected z to evaluate to 1 in the > Module. It appears that the test in the module does not > evaluate to either True or False. I don't understand why. > Can anyone explain? > > In[1]:= > opList={a->True}; > > In[2]:= > test[opts___]:=Module[{}, > If[a /. {opts}, z=1, z=2, z=3]; > {a, z} /. {opts}] > Tom, The pesky problem is the pair of braces in the condition test: a /. {opts}. Replace with a/.opts. With your expression, the output from the replacement function is "{True}" instead of the required "True" Regards Brian > In[3]:= > test[opList] > Out[3]= > {{True,3}} > > Tom Compton > > Sent via Deja.com http://www.deja.com/ Share what you know. Learn what you don't.