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...