Trong SML, việc xác định hàm bằng cách sử dụng cả kết hợp mẫu và ghép mẫu là phổ biến và dễ dàng. Dưới đây là ví dụ đơn giản:Kết hợp mẫu và pha trộn trong OCaml
fun zip [] _ = []
| zip _ [] = []
| zip (x::xs) (y::ys) = (x,y)::(zip xs ys)
Bỏ qua chức năng thư viện, cách tốt nhất để chuyển cổng này đến OCaml là gì? Theo như tôi có thể nói, không có cách nào dễ dàng để khai báo một hàm bằng cả currying và pattern matching.