¿Cómo creo una función F # con un argumento de registro de estilo printf?
Estoy tratando de crear un marco para procesar algunos archivos y datos. La única área con la que estoy luchando es cómo proporcionar una función de registro al marco, permitiendo que el marco informe mensajes sin tener ningún conocimiento del registro en uso.
let testLogger (source:seq<'a>) logger =
logger "Testing..."
let length = source |> Seq.length
logger "Got a length of %d" length
let logger format = Printf.kprintf (printfn "%A: %s" System.DateTime.Now) format
testLogger [1; 2; 3] logger
Idealmente quiero que este código funcione, pero no puedo entender cómo pasar la función de registrador.