Te damos la bienvenida a la página web del curso Técnicas avanzadas de programación: el paradigma funcional.
El curso se celebrará del 22 al 26 de julio en el Laboratorio de Aragón [Gobierno] Abierto, situado en la Plaza del Pilar nº3, edificio C, planta calle (50003 Zaragoza). Se recomienda acudir con algún documento de identificación personal (por ejemplo, DNI o pasaporte).
Puedes consultar la descripción oficial del curso en la web de los cursos de verano.
Ante cualquier pregunta, no dudes en contactar con los directores del curso.
La programación funcional es la principal alternativa al modelo “estándar” de programación imperativa. Mientras que esta se basa en un modelo de cálculo en torno a la manipulación de datos almacenados en la memoria de un computador, la programación funcional se orquesta alrededor de valores puros y funciones que operan sobre los mismos.
Estos dos modelos de computabilidad son equiparables, pero dan como resultado estilos de programación muy distintos. La proximidad de la programación funcional al modelo matemático tradicional da como resultado programas particularmente fáciles de comprender y analizar, en los que la presencia de errores es mucho menos probable e incluso puede demostrarse la ausencia de ciertos tipos de fallos, bien de forma automática, bien con un esfuerzo muy reducido.
Estas características, junto con la influencia reciente del paradigma funcional en la evolución de la mayoría de lenguajes de programación imperativos generalistas, hacen de la programación funcional una de las herramientas más útiles para toda persona interesada en el desarrollo de software de calidad, así como el camino más corto para obtener programas correctos y eficientes.
El curso presenta estos útiles fundamentales por medio de OCaml, uno de los principales lenguajes de programación funcional moderna. Estudiaremos los principios de la programación funcional a través de sesiones eminentemente aplicadas que aúnan la explicación de los principios y su puesta en práctica y su puesta en práctica por medio de ejercicios y aplicaciones reales. Asimismo, utilizaremos los entornos de desarrollo y ecosistemas existentes alrededor del lenguaje.
Al finalizar el curso, los participantes serán capaces de resolver problemas y escribir programas reales en el estilo funcional y podrán aplicar lo aprendido a sus labores habitual de programación, independientemente del lenguaje utilizado.
El evento está organizado en estrecha colaboración con los responsables del desarrollo del lenguaje OCaml. En un evento dedicado, discutiremos estos temas con desarrolladores del lenguaje y usuarios industriales del mismo, que nos explicarán los beneficios prácticos de su uso y la variedad de aplicaciones en las que sus cualidades resultan indispensables.
El curso es accesible a cualquier persona con conocimientos generales de programación, por ejemplo los adquiridos en primeros cursos de grados en ingeniería informática, matemáticas y disciplinas relacionadas, o cualquier experiencia ampliamente asimilable.
Puede ser especialmente interesante para ingenieros titulados, investigadores y profesionales de las tecnologías de la información, así como estudiantes de cursos avanzados de grado, máster y doctorado.
Las inscripciones se realizan a través de este
formulario. El coste de inscripción es de 150€ (tarifa
reducida) o 190€ (tarifa general) 20€. Puedes consultar
los “Patrocinadores y ayudas” de
este curso para conocer más sobre los descuentos en la matrícula.
El curso cubrirá los temas siguientes:
El horario del curso se divide en tres franjas para cada día:
El evento industrial asociado a este curso de verano, Day of the 🐫 2024: OCaml in Academia and Industry, se celebrará el próximo 12 de septiembre en la EINA (pendiente de confirmación). Encontrarás más información sobre el evento en este enlace.
En función de las necesidades de los participantes, podrán enfatizarse los temas que resulten de especial interés. Todas las sesiones combinan teoría y ejercicios.
La organización de los cursos de verano expedirá un diploma de participación a todos aquellos que asistan al menos al 85% de las sesiones del curso, que totalizan 30 horas lectivas sumadas a 10 horas de trabajo personal en los ejercicios asignados.
La superación formal del curso conlleva la obtención de 1,5 créditos ECTS. Los participantes interesados en esta modalidad de evaluación deberán coordinar con los profesores la realización y exposición de un trabajo de profundización sobre alguna de las partes del curso de unas 10 horas adicionales.
Enlace proporcionado a los estudiantes del curso mediante correo electrónico (si no lo has recibido, contáctanos por Zulip!).
El curso se celebrará en un formato híbrido, presencialmente en Zaragoza y de manera remota a través la plataforma Zoom. Los estudiantes matriculados en el curso habrán recibido en su correo electrónico los detalles para la conexión remota. Se recomienda instalar Zoom con antelación al inicio del curso.
Roberto Blanco es ingeniero en Informática por la Universidad de Zaragoza y doctor en Informática por la École polytechnique/Université Paris-Saclay, e investigador en el Max Planck Institute for Security and Privacy, y antes en la sede de París de Inria, centro de desarrollo del lenguage OCaml. Su trabajo gira en torno al desarrollo de métodos formales y su aplicación a la verificación de sistemas informáticos y de su seguridad, concentrado en la actualidad en la compilación segura.
Ricardo J. Rodríguez es ingeniero en Informática por la Universidad de Zaragoza y doctor en Informática por la misma universidad. Actualmente es profesor Titular de Universidad en la Escuela de Ingeniería y Arquitectura de la Universidad de Zaragoza, donde realiza tareas docentes y de investigación. Su trabajo de investigación gira en torno al análisis de propiedades de sistemas como seguridad y survivability, análisis de programas y forense digital.
El curso está patrocinado por la OCaml Software Foundation. El patrocinio corre con la diferencia del precio de matrícula para cada estudiante, teniendo el estudiante que abonar exclusivamente 20€ como costes de matrícula.