2 The Eight Myths of Erlang Performance Some truths seem to live
on well beyond their best-before date, perhaps because
"information" spreads more rapidly from person-to-person faster
than a single release note that notes, for instance, that funs
have become faster. Here we try to kill the old truths (or semi-
truths) that have become myths. Yes, funs used to be slow. Very
slow. Slower than apply/3. Originally, funs were implemented
using nothing more than compiler trickery, ordinary tuples,
apply/3, and a great deal of ingenuity. But that is ancient
history. Funs was given its own data type in the R6B release and
was further optimized in the R7B release. Now the cost for a fun
call falls roughly between the cost for a call to local function
and apply/3. List comprehensions used to be implemented using
funs, and in the bad old days funs were really slow. Nowadays
the compiler rewrites list comprehensions into an ordinary
recursive function. Of course, using a tail-recursive function
with a reverse at the end w