Evaluate[] not needed in With[]

*To*: mathgroup at smc.vnet.net*Subject*: [mg62966] Evaluate[] not needed in With[]*From*: "Steven T. Hatton" <hattons at globalsymmetry.com>*Date*: Fri, 9 Dec 2005 05:10:44 -0500 (EST)*Sender*: owner-wri-mathgroup at wolfram.com

I started looking at Dr. Maeder's _Programming in Mathematica_, and was doing quite well understanding everything until I got to the first example in the first section of the first chapter. He gives an example of using ParametricPlot and tells us "Because ParametricPlot evaluates its arguments in a nonstandard way, we need to force evaluation of the variable hline by wrapping in into Evaluate[]." He later tells me I don't need to do that for a "constant" in a With[] expression. The following is a cobbled together example showing both forms: Clear[z, x, y, cz, hlines, vlines]; z = x + y I; cz = {Re[z], Im[z]}; hg = With[{hlines = Table[N[cz], {y, -1, 1, 2/8}]}, ParametricPlot[hlines, {x, -Pi/2, Pi/2}, DisplayFunction -> Identity][[1]] ]; vlines = Table[N[cz], {x, -Pi/2, Pi/2, Pi/12}]; vg = ParametricPlot[Evaluate[vlines], {y, -1, 1}, DisplayFunction -> Identity][[1]]; Show[Graphics[Join[hg, vg], AspectRatio -> Automatic, Axes -> True]] I can read the words, and follow the instructions, but I still don't understand _why_ the version in the With[] expression doesn't need the Evaluate[]. Is there a way to _explain_ this behavior, or do I simply need to memorize the rule by rote? -- The Mathematica Wiki: http://www.mathematica-users.org/ Math for Comp Sci http://www.ifi.unizh.ch/math/bmwcs/master.html Math for the WWW: http://www.w3.org/Math/

**Follow-Ups**:**Re: Evaluate[] not needed in With[]***From:*Sseziwa Mukasa <mukasa@jeol.com>