Fun syntax
Vlad Dumitrescu
vlad_dumitrescu@REDACTED
Tue Jul 30 21:48:50 CEST 2002
Hi,
you are right, Erik: by "remote" I meant "from another module".
> > I am a little confused about the syntax for functional objects when the
> > referred function is remote. The way to define a fun is then
> > Fun = {lists, reverse}
>
>No, it is not. Don't tell anyone that this works ;)
Well, it's stated in the docs about the Fun syntax:
We can also refer to a function defined in a different module
with the following syntax:
F = {Module, FunctionName}
In this case, the function must be exported from the module
in question.
>I think the reason is that the entity lists:reverse/1 does not exist at
>compile time, the address of the function can only be found at load time or
>at the time of the call.
I was thinking that internally 'lists:reverse' could be represented just as
'{lists, reverse}' - the new syntax could only be clearer and more
consistent.
> > What I find even strange is that it works to write something like
> > {lists, reverse}([1,2,3]).
>Yes, this is terrible and ugly in so many ways... and it is going to go
>away.
Good!
>In some generic servers you want to store dynamic callback functions.
Yes, but as you say, that's why apply is here for.
best regards,
Vlad
_________________________________________________________________
Med MSN Foto kan du enkelt dela med dig av dina fotografier och beställa
kopior: http://photos.msn.se
More information about the erlang-questions
mailing list