Lets say we have to compute the scalar product of two vectors of arbitrary (but equal) lengths. This can be accomplished easily in Erlang using:
-
-module(product).
-
-export([scalar_product/2,test/0]).
-
-
scalar_product(Vector1,Vector2)->
-
{Result,_} = mais_lists:foldl(fun(X,{Acc,[Hd|Tail]})->{Hd*X+Acc,Tail} end, {0,Vector1}, Vector2),
-
Result.
-
test()->
-
scalar_product([1,2,3],[4,5,6]).