{"id":7614,"date":"2021-12-16T12:15:54","date_gmt":"2021-12-16T11:15:54","guid":{"rendered":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/?p=7614"},"modified":"2021-12-16T12:29:39","modified_gmt":"2021-12-16T11:29:39","slug":"materiales-para-la-ensenanza-de-la-programacion-funcional-con-haskell","status":"publish","type":"post","link":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/materiales-para-la-ensenanza-de-la-programacion-funcional-con-haskell\/","title":{"rendered":"Materiales para el estudio de la programaci\u00f3n funcional con Haskell"},"content":{"rendered":"<div id=\"content\">\n<p>He publicado en GitHub la p\u00e1gina <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/\">Inform\u00e1tica<\/a> con materiales para el estudio de la programaci\u00f3n funcional con Haskell cuyo contenido se ha ido creando a lo largo de los 11 a\u00f1os que he impartido la asignatura de Inform\u00e1tica en primero del Grado en Matem\u00e1ticas.<\/p>\n<p>Voy a comentar su contenido siguiendo los apartados de la p\u00e1gina y en la \u00faltima secci\u00f3n comentar\u00e9 su desarrollo hist\u00f3rico.<\/p>\n<div id=\"outline-container-org9953f8d\" class=\"outline-2\">\n<h2 id=\"org9953f8d\"><span class=\"section-number-2\">1.<\/span> Temas y c\u00f3digos<\/h2>\n<div id=\"text-1\" class=\"outline-text-2\">\n<p>El primer apartado la p\u00e1gina es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/temas_apuntes_codigos.html\">Temas y c\u00f3digos<\/a> que contiene los apuntes y c\u00f3digos de los temas. Los temas est\u00e1n en las siguientes versiones:<\/p>\n<ul class=\"org-ul\">\n<li>En la p\u00e1gina <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/temas.html\">Temas<\/a> est\u00e1n los apuntes de los temas en HTML. En cada tema, est\u00e1n los enlaces a sus versiones alternativas (en PDF y en Jupyter), a su v\u00eddeo y a su c\u00f3digo.<\/li>\n<li>En el libro <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m\/temas\/2019-20-I1M-temas-PF.pdf\">Temas de Programaci\u00f3n funcional<\/a> est\u00e1n las transparencias de la introducci\u00f3n a la programaci\u00f3n funcional (no incluye los temas de algor\u00edtmica ni los complementarios).<\/li>\n<li>En la p\u00e1gina <a href=\"https:\/\/mybinder.org\/v2\/gh\/jaalonso\/Temas_interactivos_de_PF_con_Haskell\/master?filepath=temas\/Indice.ipynb\">Temas interactivos de programaci\u00f3n funcional<\/a> est\u00e1n los temas en forma de libro interactivo con Jupyter.<\/li>\n<li>En la lista <a href=\"https:\/\/www.youtube.com\/playlist?list=PLPIlzBVlfbbEvT2zMWAE6vTvkcJJO-YLr\">V\u00eddeos de &#8220;Programaci\u00f3n funcional con Haskell<\/a> los v\u00eddeos de los temas.<\/li>\n<\/ul>\n<p>Respecto a los c\u00f3digos de los temas:<\/p>\n<ul class=\"org-ul\">\n<li>En el repositorio de <a href=\"https:\/\/github.com\/jaalonso\/I1M-Cod-Temas\">C\u00f3digos de los temas<\/a> est\u00e1n los c\u00f3digos de los temas como un proyecto. Est\u00e1 escrito como un proyecto de forma que basta ejecutar <code>stack test<\/code> para instalar Haskell, las librer\u00edas necesarias y verificar todos los ejemplos.<\/li>\n<li>En <a href=\"https:\/\/hackage.haskell.org\/package\/I1M\">I1M: Code for the Haskell course taught at the University of Seville<\/a>, de Hackage, est\u00e1 el c\u00f3digo y la documentaci\u00f3n de las librer\u00edas desarrolladas en el curso.<\/li>\n<li>En la p\u00e1gina <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/codigosDeTemas.html\">codigosDeTemas<\/a> est\u00e1n los enlaces a los c\u00f3digos de los temas usados en los apuntes de los temas.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div id=\"outline-container-org6767bbd\" class=\"outline-2\">\n<h2 id=\"org6767bbd\"><span class=\"section-number-2\">2.<\/span> Manuales de funciones Haskell<\/h2>\n<div id=\"text-2\" class=\"outline-text-2\">\n<p>El segundo apartado es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/manuales.html\">Manuales<\/a> que contiene las manuales, con ejemplos, de las funciones de las librer\u00edas que se usan en el curso.<\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-orga5970e6\" class=\"outline-2\">\n<h2 id=\"orga5970e6\"><span class=\"section-number-2\">3.<\/span> Relaciones de ejercicios<\/h2>\n<div id=\"text-3\" class=\"outline-text-2\">\n<p>El tercer apartado es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/ejercicios.html\">Ejercicios<\/a> que contiene:<\/p>\n<ul class=\"org-ul\">\n<li>El repositorio <a href=\"https:\/\/github.com\/jaalonso\/I1M-Ejercicios-Haskell\">Ejercicios de I1M<\/a> con las relaciones de ejercicios y sus soluciones. Est\u00e1 escrito como un proyecto de forma que basta ejecutar <code>stack<br \/>\ntest<\/code> para instalar Haskell, las librer\u00edas necesarias y verificar todos los ejemplos.<\/li>\n<li>El libro <a href=\"https:\/\/raw.githubusercontent.com\/jaalonso\/I1M-Ejercicios-Haskell\/main\/libro\/Ejercicios-Haskell.pdf\">Ejercicios de programaci\u00f3n funcional con Haskell<\/a> con los ejercicios del repositorio anterior. Este libro es una compilaci\u00f3n de los que he ido publicando cada a\u00f1o, desde el curso 2009-10, con las relaciones del curso como se explica m\u00e1s detalladamente en la \u00faltima secci\u00f3n. El libro consta de tres partes: introducci\u00f3n a la programaci\u00f3n funcional (PF), matem\u00e1tica mediante PF y algor\u00edtmica mediante PF. La segunda parte, aunque se plantean como relaciones de ejercicios, en realidad se deben de ver como temas desarrollados por los alumnos.<\/li>\n<li>El libro <a href=\"https:\/\/www.cs.us.es\/~jalonso\/publicaciones\/Piensa_en_Haskell.pdf\">Piensa en Haskell<\/a> tiene una colecci\u00f3n de ejercicios de programaci\u00f3n funcional con Haskell. Publicado en el 2012, es una versi\u00f3n preliminar del anterior.<\/li>\n<li>El blog <a href=\"https:\/\/www.glc.us.es\/~jalonso\/exercitium\/\">Exercitium<\/a> con los problemas propuestos diariamente desde el curso 2013-14 hasta el 2019-20.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div id=\"outline-container-org7d9e76e\" class=\"outline-2\">\n<h2 id=\"org7d9e76e\"><span class=\"section-number-2\">4.<\/span> Colecci\u00f3n de ex\u00e1menes<\/h2>\n<div id=\"text-4\" class=\"outline-text-2\">\n<p>El cuarto apartado es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/examenes.html\">Ex\u00e1menes<\/a> que contiene:<\/p>\n<ul class=\"org-ul\">\n<li>El repositorio <a href=\"https:\/\/github.com\/jaalonso\/Examenes_de_PF_con_Haskell\">Ex\u00e1menes de I1M<\/a> con los ex\u00e1menes propuestos desde el curso 2009-10 hasta el 2019-20, con las soluciones de todos los ejercicios.<\/li>\n<li>El libro <a href=\"https:\/\/raw.githubusercontent.com\/jaalonso\/Examenes_de_PF_con_Haskell\/master\/Libro\/Examenes_de_PF_con_Haskell.pdf\">Ex\u00e1menes de programaci\u00f3n funcional con Haskell<\/a> con los ex\u00e1menes de los 10 primeros cursos.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div id=\"outline-container-orga89b6d8\" class=\"outline-2\">\n<h2 id=\"orga89b6d8\"><span class=\"section-number-2\">5.<\/span> Sistemas utilizados<\/h2>\n<div id=\"text-5\" class=\"outline-text-2\">\n<p>El quinto apartado es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/sistemas.html\">Sistemas<\/a> donde se indica la forma de instalar Haskell y las librer\u00edas usadas en el curso.<\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org94be790\" class=\"outline-2\">\n<h2 id=\"org94be790\"><span class=\"section-number-2\">6.<\/span> Enlaces a los cursos que han usado el material.<\/h2>\n<div id=\"text-6\" class=\"outline-text-2\">\n<p>El sexto apartado es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/cursos.html\">Cursos<\/a> con los enlaces a los cursos que han usado el material desde el 2009-10 al 2019-20.<\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-org28ca086\" class=\"outline-2\">\n<h2 id=\"org28ca086\"><span class=\"section-number-2\">7.<\/span> Enlaces con documentaci\u00f3n.<\/h2>\n<div id=\"text-7\" class=\"outline-text-2\">\n<p>El s\u00e9ptimo apartado es <a href=\"https:\/\/jaalonso.github.io\/cursos\/i1m\/doc.html\">Documentaci\u00f3n<\/a> con enlaces a v\u00eddeos, libros y otros recursos sobre Haskell. Su \u00faltima secci\u00f3n es una colecci\u00f3n de enlaces a sitios con ejercicios de programaci\u00f3n, algunos de los cuales (como <a href=\"https:\/\/open.kattis.com\/\">Kattis<\/a>) se han usado algunos a\u00f1os.<\/p>\n<\/div>\n<\/div>\n<div id=\"outline-container-orgf5e0ceb\" class=\"outline-2\">\n<h2 id=\"orgf5e0ceb\"><span class=\"section-number-2\">8.<\/span> Evoluci\u00f3n del contenido<\/h2>\n<div id=\"text-8\" class=\"outline-text-2\">\n<p>Las p\u00e1ginas de los cursos, en las que se puede ver la evoluci\u00f3n del contenido, son <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-09\/\"> Curso 2009-10<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-10\/\">Curso 2010-11<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-11\/\">Curso 2011-12<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-12\/\"> Curso 2012-11<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/\"> Curso 2013-11<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/\">Curso 2014-15<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-15\/\"> Curso 2015-16<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-16\/\">Curso 2016-17<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-17\/\">Curso 2017-18<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-18\/\"> Curso 2018-19<\/a> y <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-19\/\">Curso 2019-20<\/a>.<\/p>\n<p>El desarrollo hist\u00f3rico de los temas es el siguiente:<\/p>\n<ul class=\"org-ul\">\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-09\/temas.html\">curso 2009-10<\/a> comienza a impartirse la asignatura y se publica la primera versi\u00f3n de los apuntes en PDF generado con LaTeX.<\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-10\/temas.html\">curso 2010-11<\/a> se ampl\u00eda el contenido con la parte de algor\u00edtmica.<\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/temas.html\">curso 2013-14<\/a> se ampl\u00eda el contenido con 3 temas de dibujos con Gloss (<a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/temas\/tema-graficos\/tema-graficos.html\">dibujos<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/temas\/tema-fractales\/tema-fractales.html\">fractales<\/a> y <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/temas\/tema-animaciones\/tema-animaciones.html\">animaciones<\/a>). Estos nuevos temas est\u00e1n s\u00f3lo en la versi\u00f3n en HTML.<\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/temas.php\">curso 2014-15<\/a> se ampl\u00eda el contenido con un tema de <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/temas\/tema-complejidad\/complejidad.html\">complejidad<\/a> y otro sobre los <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/temas\/tema-diccionarios\/tema-diccionarios.html\">diccionarios<\/a>. Estos nuevos temas est\u00e1n s\u00f3lo en la versi\u00f3n HTML.<\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-15\/temas.php\">curso 2015-16<\/a> se publica la versi\u00f3n en HTML generado con Markdown. A partir de entonces, las ampliaciones se hacen en la versi\u00f3n HTML (por ejemplo, la \u00faltimas secciones del tema 13 sobre gr\u00e1ficas y manejo de ficheros est\u00e1n en la <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-15\/temas\/tema-13.html\">versi\u00f3n HTML<\/a> y no lo est\u00e1 en la <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-15\/temas\/tema-13.pdf\">versi\u00f3n PDF<\/a>).<\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-16\/temas.php\">curso 2016-17<\/a> se ampl\u00eda el contenido con un tema de <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-16\/temas\/tema-0.html\">gr\u00e1ficos con CodeWorld<\/a> que se explica el primer d\u00eda de clase. Tambi\u00e9n se ampl\u00eda el contenido del tema de definiciones por compresi\u00f3n para incluir la secci\u00f3n <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-16\/temas\/tema-5.html#comprensi%C3%B3n-y-dibujos\">Comprensi\u00f3n y dibujos<\/a><\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-17\/temas.php\">curso 2017-18<\/a> se ampl\u00eda el contenido del tema de definiciones por recursi\u00f3n para incluir la secci\u00f3n <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-17\/temas\/tema-6.html#recursi%C3%B3n-y-dibujos\">Recursi\u00f3n y dibujos<\/a>. Tambi\u00e9n se a\u00f1ade un tema sobre <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-17\/temas\/tema-30.html\">programaci\u00f3n din\u00e1mica<\/a>.<\/li>\n<li>En el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-19\/temas.php\">curso 2019-20<\/a> se a\u00f1aden dos nuevos formatos de los temas: una <a href=\"https:\/\/mybinder.org\/v2\/gh\/jaalonso\/Temas_interactivos_de_PF_con_Haskell\/master?filepath=temas\/Indice.ipynb\">interactiva (con Jupyter)<\/a> y otra con <a href=\"https:\/\/www.youtube.com\/playlist?list=PLPIlzBVlfbbEvT2zMWAE6vTvkcJJO-YLr\">los v\u00eddeos de clase<\/a>.<\/li>\n<\/ul>\n<p>Respecto de los ejercicios, al final de cada curso he publicado un libro con las soluciones de sus ejercicios. Los libros son: <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-09\/ejercicios\/ejercicios-I1M-2009.pdf\">Ejercicios del 2009-10<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-10\/ejercicios\/ejercicios-I1M-2010.pdf\">Ejercicios del 2010-11<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-11\/ejercicios\/ejercicios-I1M-2011.pdf\">Ejercicios del 2011-12<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-12\/ejercicios\/ejercicios-I1M-2012.pdf\">Ejercicios del 2012-13<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/ejercicios\/ejercicios-I1M-2013.pdf\">Ejercicios del 2013-14<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/ejercicios\/ejercicios-I1M-2014.pdf\">Ejercicios del 2014-15<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-15\/ejercicios\/ejercicios-I1M-2015.pdf\">Ejercicios del 2015-16<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-16\/ejercicios\/ejercicios-I1M-2016.pdf\">Ejercicios del 2016-17<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-17\/ejercicios\/ejercicios-I1M-2017.pdf\">Ejercicios del 2017-18<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-18\/ejercicios\/ejercicios-I1M-2018.pdf\">Ejercicios del 2018-19<\/a> y <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-19\/ejercicios\/ejercicios-I1M-2019.pdf\">Ejercicios del 2019-20<\/a>.<\/p>\n<p>Adem\u00e1s, en el verano del 2012 publiqu\u00e9 el libro <a href=\"https:\/\/www.cs.us.es\/~jalonso\/publicaciones\/Piensa_en_Haskell.pdf\">Piensa en Haskell<\/a> que contiene una colecci\u00f3n de ejercicios de programaci\u00f3n funcional en Haskell que incluye ejercicios de los tres primeros cursos.<\/p>\n<p>De igual forma, a lo largo de cada curso he ido publicado las soluciones de sus ex\u00e1menes. Los libros son <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-09\/examenes.html\">Ex\u00e1menes del 2009-10<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-10\/examenes.html\">Ex\u00e1menes del 2010-11<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-11\/examenes.html\">Ex\u00e1menes del 2011-12<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-12\/examenes.html\">Ex\u00e1menes del 2012-13<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/examenes.html\">Ex\u00e1menes del 2013-14<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/examenes.php\">Ex\u00e1menes del 2014-15<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-15\/examenes.php\">Ex\u00e1menes del 2015-16<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-16\/examenes.php\">Ex\u00e1menes del 2016-17<\/a>, <a href=\"https:\/\/raw.githubusercontent.com\/jaalonso\/Examenes_de_PF_con_Haskell_Vol9\/master\/Libro\/Examenes_de_PF_con_Haskell_Vol9.pdf\">Ex\u00e1menes del 2017-18<\/a>, <a href=\"https:\/\/raw.githubusercontent.com\/jaalonso\/Examenes_de_PF_con_Haskell_Vol10\/master\/Libro\/Examenes_de_PF_con_Haskell_Vol10.pdf\">Ex\u00e1menes del 2018-19<\/a> y <a href=\"https:\/\/raw.githubusercontent.com\/jaalonso\/Examenes_de_PF_con_Haskell_Vol11\/master\/Libro\/Examenes_de_PF_con_Haskell_Vol11.pdf\">Ex\u00e1menes del 2019-20<\/a>.<\/p>\n<p>El desarrollo hist\u00f3rico de los manuales es el siguiente:<\/p>\n<ul class=\"org-ul\">\n<li>En el curso 2009-10 se public\u00f3 el <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-09\/doc\/resumen_Haskell.pdf\">Resumen de funciones de Haskell<\/a>.<\/li>\n<li>En el curso 2013-14 se publicaron los manuales de las librer\u00edas de <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/doc\/manual-Data.Vector.html\">vectores<\/a> y de <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-13\/doc\/manual-Data.Matrix.html\">matrices<\/a> con ejemplos de las funciones principales.<\/li>\n<li>En el curso 2014-15 se publicaron los manuales de las <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/doc\/Funciones_basicas.html\">funciones b\u00e1sicas<\/a> y las librer\u00edas de <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/doc\/Tipos_abstractos_de_datos.html\">tipos abstractos de datos<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/doc\/manual-Data.Numbers.Primes.html\">n\u00fameros primos<\/a>, <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/doc\/manual-Data.Set.html\">conjuntos<\/a> y <a href=\"https:\/\/www.cs.us.es\/~jalonso\/cursos\/i1m-14\/doc\/manual-Data.Map.html\">diccionarios<\/a>.<\/li>\n<\/ul>\n<p>Por \u00faltimo, desde el curso 2010-11 he publicado en el blog <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\">Vestigium<\/a> los diarios de clases (con un breve resumen de su contenido) que se iban publicando al final de cada clase. Los diarios (cuyas entradas est\u00e1n en orden cronol\u00f3gico inverso) son: <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2010\">Diario del 2010-11<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2011\">Diario del 2011-12<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2012\">Diario del 2012-13<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2013\">Diario del 2013-14<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2014\">Diario del 2014-15<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2015\">Diario del 2015-16<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2016\">Diario del 2016-17<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2017\">Diario del 2017-18<\/a>, <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/tag\/i1m2018\">Diario del 2018-19<\/a> y <a href=\"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/category\/curso\/i1m\/i1m2019\/\">Diario del 2019-20<\/a>.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div id=\"postamble\" class=\"status\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>He publicado en GitHub la p\u00e1gina Inform\u00e1tica con materiales para el estudio de la programaci\u00f3n funcional con Haskell cuyo contenido se ha ido creando a lo largo de los 11 a\u00f1os que he impartido la asignatura de Inform\u00e1tica en primero del Grado en Matem\u00e1ticas. Voy a comentar su contenido siguiendo los apartados de la p\u00e1gina&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"footnotes":"","_jetpack_memberships_contains_paid_content":false},"categories":[26],"tags":[270],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/7614"}],"collection":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/comments?post=7614"}],"version-history":[{"count":2,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/7614\/revisions"}],"predecessor-version":[{"id":7616,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/posts\/7614\/revisions\/7616"}],"wp:attachment":[{"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/media?parent=7614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/categories?post=7614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glc.us.es\/~jalonso\/vestigium\/wp-json\/wp\/v2\/tags?post=7614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}