tupleは関数の引数でもバラして受け取れるのが素晴らしい
以下のようにローカル変数に対して、バラして受け取れるのは知っていたが、
> let a,b = (100, 123);; val b : int = 123 val a : int = 100
関数の引数に対してもこういう書き方していいのか。
> [(1,1);(3,3)] |> List.reduce (fun (x1, x2) (y1,y2) -> (x1+y1, x2+y2));; val it : int * int = (4, 4)
便利いい。