|
[Date Index]
[Thread Index]
[Author Index]
Re: pattern matching: rules that stop other rules?
- To: mathgroup at smc.vnet.net
- Subject: [mg71604] Re: pattern matching: rules that stop other rules?
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Sat, 25 Nov 2006 05:36:39 -0500 (EST)
- References: <ek63v6$913$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
Hi,
there is a Attribute for If[] that prevent the evaluation of all other
arguments than the first called HoldRest and this must be so because
otherwise
If[AQuestionQ[],FormatMyHardDisk[],OverHeatMyCPU[]]
would evaluate FormatMyHardDisk[] *and* OverHeatMyCPU[] in all cases
independent of the result of AQuestionQ[].
Regards
Jens
croddie at princeton.edu wrote:
> Hello. I've been using Mathamatica for quite a while but without ever
> finding out how the language works fundamentally, which I'm trying to
> do now. I'd be grateful for some help in understanding patterns - it
> seems like a powerful idea to me. There is something I can't work out.
>
> Define a function f [x_]:=0 say
> Now If [ p, 1, f [ 2] ] evaluates to itself. So the rule in the
> definition is not applied to f [ 2 ].
>
> Replace If with some other undefined function, say qwerty, and you get
> qwerty [ p, 1, 0] not surprisingly. And If [ p, 1, f [ 2] ] /. f
> [x_]->0 returns If [ p, 1, 0 ].
>
> Is there a rule associated with If that stops a rule (if that's the
> right expression) from being applied inside it? Can users write such
> rules?
>
> Thanks for any help.
>
Prev by Date:
Re: pattern matching: rules that stop other rules?
Next by Date:
Re: pattern matching: rules that stop other rules?
Previous by thread:
Re: pattern matching: rules that stop other rules?
Next by thread:
Re: pattern matching: rules that stop other rules?
|