domingo, 11 de noviembre de 2007

Real World Haskell

El año pasado casi abandono Haskell en la asignatura y este año ya daba por perdida la supervivencia de programación declarativa pensando que no iba a tener alumnos.

De hecho, este año todavía no soy profesor oficialmente de la misma porque desgravé su docencia por tener créditos libres de dirección de proyectos fin de carrera.

Sin embargo, al final se matricularon alumnos suficientes para poder mantener su docencia y el profesor que iba a impartirla no pudo por una cierta traba burocrática. Así que decidí seguir impartiéndola para que no se pierda y conseguí un fichaje estelar, Guti, que va a impartirla conmigo.

También decidí recuperar el lenguaje Haskell, que siempre me gustó y me sigue pareciendo uno de los mejores lenguajes de programación existentes.

Y la sorpresa es que parece que en este último año se está poniendo un poco de moda y parece que hay una cierta comunidad de hackers interesados en el mismo.

Hoy mismo, descubrí un tutorial interesante en O'Reilly, que es uno de los sitios donde se hacen tutoriales de cosas que están de moda. El tutorial tiene otras dos partes, dedicadas a funciones puras y a mónadas.

Tirando de los comentarios de dicho tutorial, descubrí que hay un libro en preparación titulado Real World Haskell, de O'Reilly, lo cual implica que el lenguaje tendrá una cierta exposición fuera del ámbito académico.

Parece que esta moda se debe a 2 proyectos desarrollados en Haskell que están teniendo cierta fama: Darcs, un sistema de control de versiones distribuido, y Pugs, una implementación de Perl 6.

4 comentarios:

El Aprendiz dijo...

Me tocado mirar para el Máster la Scripting API de Java, una API para poder comunicar "lenguajes de script" (es lo que dicen en la especificación en inglés, no sé muy bien como traducirlo) con java de manera bidireccional.

Es bastante interesante y trae soporte para Haskell a través del proyecto Jaskell.

No tengo muy claro lo puro que es Jaskell en si (parece algo bastante interesante la mezcla entre Java y Haskell, la mezcla de dos paradigmas), pero quizás pueda ser interesante para enseñar a los alumnos que la programación declarativa no es algo tan alejado del mundo real (tambien trae soporte para XSLT, a través de la propia API de Java para XSLT).

Yo he jugado un poco con la parte de XSLT y Python. Si lo miras no dudes en poner un post explicando la experiencia :P

Anónimo dijo...

Si te sirve de algo, los viernes tengo unos "paseos sobre programacion" o "code walktrough" - aqui en Londres - en la que me dan charlas sobre ultimas tecnologias.

Salio a la luz el tema de la programacion funcional que se estaba empezando a utilizar bastante y se nos puso un ejemplo de "no recuerdo" que lenguaje. Finalmente, nombraron a Haskell pero no hablaron mucho de ello. Estuvo muy bien.

Aun recuerdo mis pinitos con Haskell en primero de carrera en tu asignatura... jaja...

Anónimo dijo...

A mí del Haskell me suena el nombre, pero si lo dais tú y Guti tiene que estar bien :-)

[ yo aún no he superado la etapa del C puro y duro, y no programo en COBOL porque siempre lo odié :-) ]

Victor Martinez dijo...

Hola, este post es muy antiguo pero me gustaria hacer un comentario.

Por circunstancias del trabajo este viernes he asistido a una conferencia sobre Erlang, en la que una de las charlas era por parte de Simon Peyton-Jones, uno de los creadores del lenguaje Haskell. La charla era sobre la comparacion de Haskell y Erlang y como habian evolucionado paralelamente como lenguajes.

Es posible que a la unica persona que haya oido hablar sobre Haskell antes de interesarme minimamente por la programacion funcional fuera a Labra en las clases de Logica.

Ahora me arrepiento de no haber cursado programacion logica y funcional en su dia. El problema es que cuando estas estudiando, especialmente los primeros anyos es dificil distinguir la utilidad que algo puede tener.

Es mucho mas facil verlo posteriormente cuando te enfrentas a problemas reales e investigas sobre diferentes formas para resolverlos.