Acabo de comenzar con F #, que es mi primer lenguaje funcional. He estado trabajando casi exclusivamente con C # y disfruto mucho de cómo F # me lleva a repensar cómo escribo el código. Un aspecto que encuentro un poco desorientador es el cambio en el proceso de escritura de código. He estado usando TDD durante años en C # y realmente aprecio tener pruebas unitarias para saber dónde estoy.
Hasta ahora, mi proceso con F # ha sido escribir algunas funciones, jugar con ellas con la consola interactiva hasta que esté "razonablemente" seguro de que funcionan, y ajustar y combinar. Esto funciona bien en problemas a pequeña escala como el Proyecto Euler, pero no puedo imaginarme construir algo grande de esa manera.
¿Cómo abordan las personas las pruebas unitarias y la creación de un conjunto de pruebas para un programa de F #? ¿Existe un equivalente a TDD? Se agradece cualquier sugerencia o pensamiento.