Re: Re: With[{software=Mathematica}, Frustration]
- To: mathgroup at smc.vnet.net
- Subject: [mg24430] Re: [mg24385] Re: [mg24308] With[{software=Mathematica}, Frustration]
- From: BobHanlon at aol.com
- Date: Tue, 18 Jul 2000 00:58:28 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
In a message dated 7/12/2000 11:51:17 PM, siegman at stanford.edu writes: >In article <vfca5.325$f6.112205 at ralph.vnet.net>, Wolf Hartmut ><hwolf at debis.com> wrote: > >> In[2]:= With[{a = 2, b = 3}, Evaluate[c]] >> Out[2]= 6 >> >> will do what you want! Why? What was meant saying by the quotations >> is that With gives a *textual* substitution for the given variables >> occuring in the *unevaluated* body. > > >Thanks for this reply, and others. But, there is still frustration. > >What I really want is as follows. I'm entering a bunch of functional >relations like c = a b, using direct assignments (=, not :=) and being > >careful not to give values to the independent variables like a and b as > >I go along > >At various points I'd like to print out numerical test values or check > >values of these functions, like for example > > With[ {a=2, b=3}, > Print["a = ",a,", b = ",", c =",c,", Sin[c] = ",Sin[c] ] >] > >just to check what some typical values might be, or to check that the >results are reasonable. > >Challenges: > >1) Try wrapping the "Print" statement, or the "c" value, or the >"Sin[c]", or various combinations of these, within Evaluate[]'s -- **and > >then try predicting in advance, based on your knowledge of Mathematica, >what >these different combinations will do**. > >2) Find *any* combination of With, Print and Evaluate that will >accomplish the elementary "print a trial result" task that's wanted >above. (I haven't found one yet.). > >3) Finally, reconsider your explanation of *textual* substitution. >With[ ] will "textually substitute" within the Evaluated form of c -- >but not in the "a =" strings -- which are expressions -- and hence >should be "variables" in a sense.. Try, for example > > With[{a=2}, Evaluate[{"a = ",a}] > >What gets "textually substituted"? -- what's Mathematica "code"? (see >the Book) -- in this case, and what isn't? > With[{a = 2, b = 3}, Evaluate[StringForm["a = ``, b = ``, c = ``, sin(c) = ``", a, b, c, Sin[c]]]] Bob Hanlon