All pastes #915750 Raw Edit

Something

public text v1 · immutable
#915750 ·published 2008-02-24 00:44 UTC
rendered paste body
-module(fib).
-compile(export_all).

fib(0) -> 0;
fib(1) -> 1;
fib(N) -> fib(N-1) + fib(N-2).

fibs(N) -> [fib(X) || X <- lists:seq(1, N)].

fibp() ->
    receive
        {From, {fib, N}} -> From ! {self(), {N, fib(N)}}
    end.

fibsp(N) ->
    lists:foreach(
        fun(X) ->
            Pid = spawn(fun() -> fibp() end),
            Pid ! {self(), {fib, X}}
        end, lists:seq(1, N)),

    lists:map(
        fun(X) ->
            receive
                {_From, {X, Fib}} -> {X, Fib}
            end
        end, lists:seq(1, N)).