|
[Date Index]
[Thread Index]
[Author Index]
Re: Reevaluation of conditional arguments when the condition has changed
- To: mathgroup at smc.vnet.net
- Subject: [mg61056] Re: Reevaluation of conditional arguments when the condition has changed
- From: "Jens-Peer Kuska" <kuska at informatik.uni-leipzig.de>
- Date: Sun, 9 Oct 2005 01:35:05 -0400 (EDT)
- Organization: Uni Leipzig
- References: <di7r8p$koj$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
expr1 /. DownValues[foo]
Regards
Jens
PS: This seems to be a bug, introduced by some
kind of optimization.
"David Park" <djmp at earthlink.net> schrieb im
Newsbeitrag news:di7r8p$koj$1 at smc.vnet.net...
| Dear MathGroup,
|
| Here is a programming problem that stumps me. We
start with a condition that is always False.
|
| fooQ[_] := False
|
| Then write a definition that will factor out
multipliers of fooQ objects.
|
| foo[a_ b_?fooQ] := a foo[b]
|
| The following does not factor because b, or
anything else, fails the test.
|
| expr1 = foo[a b]
| giving: foo[a b]
|
| Now I define b as a fooQ object.
|
| fooQ[b] := True
|
| Now when I enter the same expression the a
factors out.
|
| foo[a b]
| giving: a foo[b]
|
| But if I reevaluate expr1 the definition is not
applied.
|
| expr1
| giving: foo[a b]
|
| Why shouldn't I expect that to evaluate and now
factor? Is there a proper way to write the
definitions so it will evaluate?
|
| David Park
| djmp at earthlink.net
| http://home.earthlink.net/~djmp/
|
|
Prev by Date:
RE: Reevaluation of conditional arguments when the condition has changed
Next by Date:
Re: Reevaluation of conditional arguments when the condition has changed
Previous by thread:
RE: Reevaluation of conditional arguments when the condition has changed
Next by thread:
No visualisation of unmatched brackets anymore
|