is_function vs tuples (functions in non-local modules)

Fredrik Linder <>
Fri Jun 11 13:42:21 CEST 2004


You could use erlang:function_exported/3.

/Fredrik

> -----Original Message-----
> From: 
> [mailto:]On Behalf Of David N. Welton
> Sent: den 11 juni 2004 12:21
> To: 
> Subject: is_function vs tuples (functions in non-local modules)
> 
> 
> Here's another one that's got me scratching my head:
> 
> 1> c(parser).
> {ok,parser}
> 2> parser:tr("x").
> "<tr>x</tr>"
> 3> Fun = {parser, tr}.
> {parser,tr}
> 4> Fun("x").
> "<tr>x</tr>"
> 5> {parser, tr}("x").
> "<tr>x</tr>"
> 6> is_function(Fun).
> false
> 7> is_function({parser, tr}).
> false
> 
> Is there any way to tell?
> 
> Reason being, I want to pass a list of things to a function.  This 
> function should only call the ones that are actually 
> functions.  I guess 
> I could use catch, but that's got it's own problems (if it is 
> a function 
> and it errors out, I want the error to be passed on up) and 
> doesn't seem 
> elegant.
> 
> Thankyou once again for your time,
> -- 
> David N. Welton
> 
> 



More information about the erlang-questions mailing list