MathGroup Archive 2008

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

Search the Archive

Re: Best practice passing expressions to functions

  • To: mathgroup at smc.vnet.net
  • Subject: [mg85316] Re: [mg85290] Best practice passing expressions to functions
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Tue, 5 Feb 2008 19:47:17 -0500 (EST)
  • Reply-to: hanlonr at cox.net

f[expr_] := Module[{var = Variables[expr][[1]]},
   ToExpression["g[" <> ToString[var] <> "_] := " <> 
     ToString[InputForm[expr ]]]];


Bob Hanlon

---- Remo Aschwanden <rcasch at yahoo.com> wrote: 
> Hi
> 
> I want to write procedures that accept expressions as parameters and be 
> able define functions based on these expressions, i.e.
> 
> f[exp_]:=Module[
>    "g[x_] := exp "
> ]
> 
> The code between the " " should clarify what I intend to do. Calling 
>    f[x^2-2x+4] 
> should lead to the definition of a function (or pattern)
>    g[x_]:=x^2-2x+4;
> 
> What's the best way to do this? How can I do this without being 
> dependent on the variables used in the expressions ("x")?
> 
> Thank you.
> Remo A.
> 
> 



  • Prev by Date: Re: Best practice passing expressions to functions
  • Next by Date: NDSolve: PDE's with more than 2 indep. variables.
  • Previous by thread: Re: Best practice passing expressions to functions
  • Next by thread: Re: Best practice passing expressions to functions