erl_eval.erl : Mucho weirdness

Kostis Sagonas kostis@REDACTED
Tue May 24 14:27:26 CEST 2005


In  stdlib/src/erl_eval.erl  one finds the following beauty:

-------------------------------------------------------------------------
do_apply({M,F}=Func, As, Bs0, Ef, RBs)
  when is_tuple(M), size(M) >= 1, is_atom(element(1, M)), is_atom(F) ->
    case Ef of
        none when RBs == value ->
            %% Make tail recursive calls when possible.
            apply(M, F, As);
        none ->
            ret_expr(apply(M, F, As), Bs0, RBs);
    ... [SNIP] ...
-------------------------------------------------------------------------

Can somebody explain to me the intention of the guards ?

Kostis




More information about the erlang-questions mailing list