Un DateTime en F# es un objeto inmutable que contiene información tanto de fecha como de hora. Se puede acceder a la información de fecha y hora a través de sus propiedades integradas.
Se puede manipular un DateTime llamando a uno de sus métodos. Como los valores DateTime nunca cambian una vez definidos, todos los métodos que parecen modificar un DateTime en realidad devuelven un nuevo DateTime.
Se pueden comparar instancias de DateTime con los operadores de comparación predeterminados (<, >, etc.). La fecha (y la hora) actual se puede obtener a través de la propiedad DateTime.Now.
Un aspecto importante de las fechas en F# es que dependen de la cultura. Por ello, cualquier método de DateTime que trabaje con strings dependerá de la cultura actual. Esto incluye el método DateTime.Parse(), que analiza un string y lo convierte en un DateTime, así como el método ToString() de la clase DateTime, que convierte un DateTime en un string.
Cuando usas un DateTime en una llamada a sprintf, en lugar de convertir manualmente el DateTime en un string y usar el marcador %s para string, puedes usar el marcador de posición %O, que convertirá automáticamente el DateTime en su valor como string.