Например ф-я let rec sum = function [] -> 0 | k :: l -> k + sum l;; и let rec fib = function 0 -> 0 | 1 -> 1 | j -> fib (j - 2) + fib (j - 1);; В случае с fib, все ясно. А вот с sum, не вижу логики. (off: спец. для Pi - спасибо конечно, но результат я вижу и знаю, что это pattern matching) К примеру, как будет выглядеть sum, если нужно высчитать сумму каждого 2 элемента ? Объясните плиз, или ткните носом туда, где все это подробно расписано. Спасибо заранее.