Podawanie krotki do funkcji takich jak printfn
Chcę dać krotkę do aprintf
funkcjonować:
let tuple = ("Hello", "world")
do printfn "%s %s" tuple
To oczywiście nie działa, mówi kompilator, że potrzebujestring
zamiaststring*string
. Piszę to w następujący sposób:
let tuple = ("Hello", "world")
do printfn "%s %s" <| fst tuple
Następnie kompilator słusznie zauważa, że teraz mam wartość funkcji typustring -> unit
. Ma sens. Umiem pisać
let tuple = ("Hello", "world")
do printfn "%s %s" <| fst tuple <| snd tuple
I to działa na mnie. Ale zastanawiam się, czy może być jakikolwiek sposób, by zrobić to ładniej
let tuple = ("Hello", "world")
do printfn "%s %s" <| magic tuple
Mój problem polega na tym, że nie mogę uzyskać tego, którego typu printf potrzebuje, aby wydrukować dwa argumenty. Co mogłomagic
funkcja wygląda?