Erlang: можно ли написать минимальную функцию в виде свертки списка?

Для функции:

min(A, B)  when A =< B -> A;
min(_A, B)             -> B.

могу ли я использовать это в функции foldl аналогично этому:

lists:foldl(fun min/2, 0, [1,2,3,4,5,6,7,8,9,10])

Я считаю, что это невозможно, потому что я необходимо установить начальное значение, которое будет сравниваться с остальной частью списка, например, нет никакой функции идентификации, о которой я мог бы думать. Я прав?

Синтаксис написан на Erlang, но должен быть доступен для чтения программистам, не относящимся к Erlang тоже.

5
задан Yasir Arsanukaev 2 March 2011 в 15:26
поделиться