Re: Variables?

*To*: mathgroup at yoda.physics.unc.edu*Subject*: Re: Variables?*From*: jfh124 at rsphy1.anu.edu.au (jason harris)*Date*: Sun, 30 May 1993 20:24:29 -0500

Levent Kitis writes... >Is the following a bug or is Variables[..] supposed to work this way? >In[1]:= p[x_] := 1 + E x + Pi x^2 >In[2]:= Variables[p[x]] >Out[2]= {E, Pi, x} No this is not a bug. In expression In[2], p[x] evaluates to 1 + E x + Pi x^2. Then it returns Variables[1 + E x + Pi x^2], which is {E, Pi, x}. If you wamted to know the variable inside the head you could define In[1]:= MyVariables[h_[x__]]:={x}; SetAttributes[MyVariables,HoldAll] (* this attribute HoldAll makes sure that h[x] is not evaluated and *) (* will match the pattern *) then, In[2]:= MyVariables[p[x,y]] Out[2]= {x,y} In[3]:= MyVariables[p[x]] Out[3]= {x} hope this helps, Jason $ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@% Jason Harris jfh124 at rsphysse.anu.edu.au Optical Sciences Center Australian National University ACT 0200, Canberra Tel.: 495-0191 Australia. Fax.: 249-5184 $ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?$ at %?$@%?