Aprendiendo programación funcional.

Fsharp,_Logomark,_October_2014.svg

Hace mucho tiempo que me causa curiosidad la programación funcional y claro, si eres tan inquieto como yo, pues terminas investigando qué es, para qué sirve, por qué usarlo o dónde, ya que a pesar de ser un paradigma muy interesante, me atrevería a decir que la mayoría trabajamos y pensamos orientados a objetos.

Empezando con mis investigaciones, lo primero que he querido comprobar es cómo de sencillo es comenzar a programar funcionalmente y la verdad es que tengo un largo camino por delante, estoy muy verde, pero creo que es una forma muy interesante de ampliar los conocimientos y herramientas para disfrutar de la programación.

De forma habitual utilizo tecnologías Microsoft para mi día a día y, cómo no, he comenzado a probar con F#, un lenguaje del que puedes leer por aquí.

Lo primero que he hecho con F# ha sido probarlo para leer una web y extraer las partes que me interesen y la sorpresa ha sido mayúscula. He instalado en Visual Studio Code la extensión Ionide para ir haciendo pruebas sin necesidad de usar un IDE completo y empezar a practicar.

Para comenzar, al igual que en C# tenemos Html Agility Pack, en F# tenemos FSharp.Data, que nos ayuda con estas labores. Con F# también podríamos hacer uso de Html Agility Pack , pero no ha sido el caso. En fin, vamos a ver el código:

F#SoyMotor

Lo primero es importar las librerías que necesitamos y luego creamos el tipo de datos Html desde la web que vamos a descargar. En mi caso he descargado FSharp.Data desde su sitio y lo he puesto en la misma carpeta que el archivo *.fsx.

Le decimos las librerías que vamos a utilizar con las dos primeras líneas, luego, abrimos la librería FSharp.Data para utilizarla y creamos el tipo de dato utilizando la funcionalidad HtmlProvider.

Ya con el tipo de datos que vamos a necesitar, descargamos la web y comienza la sencillez de F#, seleccionamos todos los descendientes de nuestro Html y comenzamos a filtrar, lo que nos devolverá una lista que iteraremos para escribir por consola el texto.

Tengo mucho camino por recorrer, ya que este código se puede simplificar más, seguro, pero de algo estoy seguro, va a ser un camino apasionante.

Igualmente, creo que F# va a convertirse en compañero habitual de viajes y que la lógica de mis proyectos la escribiré en librerías funcionales con este lenguaje.

Nos vemos en el siguiente, pásalo bien.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s