Evaluate part of rhs of RuleDelayed
- To: mathgroup at smc.vnet.net
- Subject: [mg91081] Evaluate part of rhs of RuleDelayed
- From: "Eugene Kirpichov" <ekirpichov at gmail.com>
- Date: Tue, 5 Aug 2008 06:28:03 -0400 (EDT)
I am writing a lazy recursive function (actually, a tree of UI widgets that is too large to be constructed at once). Consider, for example, the following code: SomeComplexFunction[a_] := Module[{x}, x = a*a; {value :> SomeComplexFunction[x + a]}] The value of SomeComplexFunction[5] is {value :> SomeComplexFunction[x$7418 + 5]} and seemingly can'd be used for anything useful. Question: How should I fix the code of SomeComplexFunction so that the value of SomeComplexFunction[5] be {value :> SomeComplexFunction[30]} ? Unfortunately, this one SomeComplexFunction[a_] := Module[{x}, x = a*a; {value :> SomeComplexFunction[Evaluate[x + a]]}] yields {value :> SomeComplexFunction[Evaluate[x$7421 + 5]]} -- Eugene Kirpichov Web IR developer, Yandex
- Follow-Ups:
- Re: Evaluate part of rhs of RuleDelayed
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Evaluate part of rhs of RuleDelayed
- From: Carl Woll <carlw@wolfram.com>
- Re: Evaluate part of rhs of RuleDelayed