Nemělo by být ve funci
let rec sum = (list) => switch list { | Nil => 0 | Cons(num, nums) => x + sum(nums) };
správně
| Cons(num, nums) => num + sum(nums)
A druhá poznámka, pokud všechny prvky seznamu musí být stejného typu, tak se jedná o homogenní seznam.