MathGroup Archive 2002

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

Search the Archive

Re: rightTree[tree[_, _, right_]] := right Hu?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg38031] Re: rightTree[tree[_, _, right_]] := right Hu?
  • From: "Allan Hayes" <hay at haystack.demon.co.uk>
  • Date: Tue, 26 Nov 2002 00:49:50 -0500 (EST)
  • References: <arshqs$ea1$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Steven,

Mathematica may look like it uses functions but it is actually to do with
the action of replacement rules on expressions.

Thus,

    rightTree[tree[_, _, right_]] := right

( or for that matter  rightTree[tree[_, _, r_]] := r)

means:

    Store a rule so that when during the evaluation process
    an expression of the form

        rightTree[tree[_, _, x_]]

    is found, it is replaced by

        x

The rule is stored in DownValues[rightTree]

    DownValues[rightTree]

        {HoldPattern[rightTree[tree[_,_,right_]]]:>right}

The evaluation process is described in Appendix 4 (A.4) of the Book.

--
Allan

---------------------
Allan Hayes
Mathematica Training and Consulting
Leicester UK
www.haystack.demon.co.uk
hay at haystack.demon.co.uk
Voice: +44 (0)116 271 4198
Fax: +44 (0)870 164 0565


"Steven T. Hatton" <hattons at globalsymmetry.com> wrote in message
news:arshqs$ea1$1 at smc.vnet.net...
> I found this:
> rightTree[tree[_, _, right_]] := right
>
> in Dr. Mäder's Computer Science with Mathematica.  I understand the
spirit of
> the statement, but it looks rather strange to me.  Is there a way of
> describing, in a language such as English, exactly what this definition
> means? The part that I find confusing is the inclusion of what looks like
a
> function call in the parameter list.  This simply defies my sense of how
> programming languages work.  That doesn't mean it's a bad thing.  It just
> means that I don't feel comfortable with the syntax.
>
> Is there somewhere in the Mathematica Book , or Help which discusses such
> arcana?
>
> --
> STH
> Hatton's Law:
> "There is only One inviolable Law."
>
>




  • Prev by Date: Re: help with Export[...,"EPS"]
  • Next by Date: Re: Mathematica Documentation
  • Previous by thread: Re: rightTree[tree[_, _, right_]] := right Hu?
  • Next by thread: Re: rightTree[tree[_, _, right_]] := right Hu?