Si alguna vez tengo que programar en el entorno .NET, ¿puedo ir directamente a F #?

¡Absolutamente!

F # es un lenguaje de programación completo de Microsoft para .NET basado en OCaml. Puede desarrollar el mismo tipo de aplicaciones en F # que en C # o VB.NET. Es difícil llamarlo maduro ya que es bastante nuevo, pero eso no debería impedir que lo use considerando el soporte de MS / .NET. F # presenta una sintaxis mínima y altamente expresiva, inmutabilidad opcional e inferencia de tipos (entre otros).

Como la mayoría de los lenguajes de programación en .NET F #, se compila en un lenguaje intermedio que luego es interpretado por la máquina virtual .NET. Esto pone C # y F # uno al lado del otro, y el código de uno puede usarse dentro del otro. En otras palabras, tiene una gran interoperabilidad con otros lenguajes .NET.

Sin embargo, tenga en cuenta que algunas herramientas que están disponibles en Visual Studio para C # y VB.NET no funcionarán con F #. Una de estas herramientas es el diseñador de GUI para Windows Forms y Windows Presentation Framework. En el último caso, tendría que crear un XamlReader para hacer una GUI de esa manera, por lo que Windows Forms sería una mejor opción.

El índice TIOBE para agosto acaba de poner F # en la lista de los 20 principales sobre los principales lenguajes de programación, y eso habla un poco por sí mismo.

Además, si disfruta de la programación funcional (como yo) y tiene que trabajar en la plataforma Windows, es increíble tener un lenguaje de programación nativo compatible con el productor de Windows.

Hay varios libros para comenzar (ordenados por dificultad, fácil-difícil):

  • Comenzando F #
  • Programación F #
  • Programación funcional del mundo real
  • La guía definitiva para F #
  • F # profesional
  • Experto F # (2.0)
  • Fundamentos de F #
  • F # para científicos