[erlang-questions] Optimization for the ++ operator
José Valim
jose.valim@REDACTED
Fri Jun 1 10:46:28 CEST 2012
>
> The '++' operator does not verify that the second argument is a list.
> Therefore, the compiler will rewrite the first expression to simply:
>
> [$F,$o,$o|Bar]
>
Yes, thanks. For some weird reason I thought Erlang restricted the right
side to be a list in such cases.
> Have you made sure that you run each test in a newly spawned process?
Do you run the test for long enough time?
>
Running in a newly spawned process did the trick, the results are now
consistent.
I was already running it 1000 times, here is the code (without using spawn):
https://www.refheap.com/paste/2954
I assume having a "clean" heap (reducing the chance of garbage collection)
is the reason why it is a good idea to run benchmarks in a newly spawned
process?
Thanks Björn!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20120601/e6691b86/attachment.htm>
More information about the erlang-questions
mailing list