MathGroup Archive 2009

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

Search the Archive

Re: pure function with optional number of arguments

  • To: mathgroup at smc.vnet.net
  • Subject: [mg98964] Re: pure function with optional number of arguments
  • From: Szabolcs Horvát <szhorvat at gmail.com>
  • Date: Wed, 22 Apr 2009 06:32:52 -0400 (EDT)
  • References: <gsmmvk$d24$1@smc.vnet.net>

Ruth Lazcoz Saez wrote:
> Hi,
> 
> I have two definitions for a function, one in the case it has one  
> argument and another one if it has two.
> 
> Efun[x_]:=x^2
> Efun[x_,y_]:=x^2+y^2
> 
> Then I want to construct a pure function that does the same thing as  
> this non-pure function
> 
> myint[params__] := Integrate[z*Efun[params], {z, 0, #}] & /@ {1, 2, 3}
> 
> I tried to accomplish it with
> 
> myintpure= Function[params, Integrate[z*Efun[params], {z, 0, #}] & /@  
> {1, 2, 3}],
> 
> but myintpure[x,y] gives not the same as myint[x,y], so this pure  
> function I have constructed seems to be not right.
> 

Try this:

myintpure =
  Function[upper, Integrate[z*Efun[##], {z, 0, upper}]] /@ {1, 2, 3} &

## stands for multiple arguments.  Here I use the Function[...] notation 
for the inner function, and the (...)& notation for the outer one.


  • Prev by Date: Re: How to get values from Manipulate
  • Next by Date: Re: pure function with optional number of arguments
  • Previous by thread: Re: Re: pure function with optional number of arguments
  • Next by thread: Re: pure function with optional number of arguments