Сделать вы знаете, как лучше всего выполнить эту работу:
let toTableau2D (seqinit:seq<'a*'b*'c>) =
let myfst = fun (a,b,c) -> a
let myscd = fun (a,b,c) -> b
let mytrd = fun (a,b,c) -> c
let inputd = seqinit |> groupBy2 myfst myscd
должен быть способ лучше, чем переписывание fst ..
ОБНОВЛЕНИЕ После советов по пэдам я переписал упаковку предыдущих 'a *' b в единую структуру. Теперь мой код выглядит так
let toTableau (seqinit:seq<'a*'b>) =
let inputd = seqinit |> Seq.groupBy fst |> toMap
let keys = seqinit |> Seq.map fst |> Set.ofSeq |> List.ofSeq
...