MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Just another Mathematica "Gotcha", and HoldForm

  • To: mathgroup at smc.vnet.net
  • Subject: [mg120830] Re: Just another Mathematica "Gotcha", and HoldForm
  • From: DrMajorBob <btreat1 at austin.rr.com>
  • Date: Fri, 12 Aug 2011 05:04:28 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <j1r5d3$fi4$1@smc.vnet.net> <j1tnpf$pnu$1@smc.vnet.net>
  • Reply-to: drmajorbob at yahoo.com

Again, no experimentation is needed.

If you want to know what an operator operates upon in a statement,  
double-click on that operator.

Done.

Bobby

On Thu, 11 Aug 2011 04:09:42 -0500, Richard Fateman  
<fateman at cs.berkeley.edu> wrote:

> Why one might be confused
>
> In[6]:= A + B /. x_ -> M[x]
> Out[6]= M[A + B]
>
> In[7]:= A + B // M
> Out[7]= M[A + B]
>
> In[8]:= A + B /. x_ -> M[x] // F
> Out[8]= F[M[A + B]]
>
> In[9]:= A + B // M /. x_ -> F[x]
> Out[9]= F[M][A + B]
>
>
> Note the identicality of Out[6] and Out[7].
> Note that Out[8] and Out[9] are different.
>
> Since neither //  nor /. are "traditional" mathematical
> syntax, one's intuition may be unreliable. Simple examples
> such as 6,7 above, might lead one to believe they have
> equal precedence and are treated nominally from left to right.
>
> Reading up on the details by looking at Mathematica's
> description of syntax and operator precedence is difficult,
> since it is simultaneously daunting and incomplete.
> One is therefore left with experimentation. Simple experiments
> are not enough, though, as shown by 6, which suggests that
> /. applies rule(s) to everything to the left, and 7 which
> suggests that // applies an operator to everything
> to the left.  Both of these are false. See a=b/.f;  a=b//f.
>
> In looking at examples, I think I found a bug, but maybe
> it is a feature?
>
> Did you know that
>
> HoldForm[x //@ y]      returns  x//@y
>    but
> HoldForm[x //  y]      returns  y[x]
>
> ?
> (version 7.0).
>
> While it is easy to place blame on "user error", I think "design error"
> contributes to difficulties as well.
>
> RJF
>


-- 
DrMajorBob at yahoo.com




  • Prev by Date: Re: Just another Mathematica "Gotcha", and HoldForm bug
  • Next by Date: Re: Just another Mathematica "Gotcha", and HoldForm
  • Previous by thread: Re: Odd glitch opening Mathematica notebook on a Mac
  • Next by thread: Getting the Date and Time From a Time Server