Re: Return[] in pure function

*To*: mathgroup at smc.vnet.net*Subject*: [mg58881] Re: Return[] in pure function*From*: OT <montoz at invalidiol.it>*Date*: Fri, 22 Jul 2005 01:58:31 -0400 (EDT)*References*: <dbou77$sqm$1@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

dh ha scritto: > Hi, > I seems to me that there is a bug in the implementation of pure > functions. If somebody can explain the following behaviour it would be > interessting. If not, maybe Wolfram can contribute something. > Consider > f[x_]:= If[x==0,Return[Error],x]; > f /@ {1,0} > gives {1,Error} what is fine. > Now replace the function by a pure function: > If[#==0,Return[Error],#]& /@ {1,0} > this gives {1,Return["Error"]}. The Return statement has not been evaluated. > > sincerely, Daniel > Return[expr] exits control structures within the definition of a function, and gives the value expr for the whole function. I think Return *must* be called inside a not-pure function: if you write Return[Error] you get "Return[Error]" as output...