Cursos‎ > ‎Cursadas Anteriores‎ > ‎2018‎ > ‎Noc-Miércoles‎ > ‎

Seguimiento clase Miércoles a la noche K2051 - 2018


 Próxima clase

17: Miércoles 15/08
Primero tienen que armar la lista de grupos de 2 integrantes, si no lo definen para el sábado 18/08 nosotros les asignaremos compañero.
La clase va a ser principalmente en cañón, repasando los conceptos de los módulos 1 y 2, el Módulo 03: Introducción a Polimorfismo, en el entorno Wollok.
El ejemplo en el cual vamos a centrar la clase es Empanadas Giménez, mejorado por mi amigo Carlos Lombardi.
También veremos un ejemplo visual de pepita para reforzar los conceptos de objeto, mensaje, efecto, preguntas y acciones.
La página oficial de Wollok es www.wollok.org, te recomendamos que veas el tour y podés empezar a jugar instalando en tu máquina el IDE (ya está disponible Wollok Gramsci, versión 1.7.0, que será la oficial de la cursada del 2019). Para ponerte cómodo te recomendamos que te bajes el Anexo 1: Guía de shortcuts del entorno Wollok.


  Clases anteriores

16: Miércoles 08/08
A las 18:00 será el parcial de Lógico que se podrá hacer en máquina, con la misma modalidad que el parcial de Funcional.
A las 21:00 empezaremos a trabajar el paradigma de Objetos:
  • Módulo 01: Objeto. Mensaje. Métodos. 
  • Módulo 02: Referencias. Estado. Compartir objetos. Identidad.
Todavía no te instales el entorno Wollok, bancanos una semana más.

15: Miércoles 11/07
Corregiremos a partir de las 18:00 la segunda entrega del TP de Lógico. Tené presente las condiciones de aprobación, eso implica entregar en tiempo y forma y pasar los tests.
Luego resolveremos el parcial Sueños (05/07/2017), que tomamos el año pasado.
Y finalmente... nuestras merecidas vacaciones de invierno.

14: Miércoles 04/07
Primero estaremos contando el Módulo 6: Elementos de Diseño. Delegación. Acoplamiento. Code smells.
Y luego haremos un simulacro de parcial.
Ya tenés el enunciado de la segunda entrega del TP de Lógico.

13: Miércoles 27/06
Después del feriado del 20/06, tendremos la entrega 1 del TP de Lógico. Acordate de leer las condiciones de aprobación, eso implica entregar en tiempo y forma y pasar los tests.
Luego veremos el Módulo 5: Recursividad.

12: Miércoles 13/06
Terminaremos el Módulo 3: Estructuras de datos. Individuos simples y compuestos.
Y luego seguiremos con el Módulo 4: Predicados de orden superior.

Ya liberamos la entrega 1 del TP de Lógico prevista para el miércoles 27/06. Leé bien las condiciones de aprobación para que no haya confusiones.
Para trabajar en Prolog hay dos recomendaciones:
  • utilizalo online mediante la página SWISH
  • trabajá en forma local mediante Visual Studio Code + el plugin VSC-Prolog (buscalo en las extensiones así). Si estás en Windows probablemente el plugin no encuentre el ejecutable donde está SWI Prolog para compilarlo y mostrarte errores en el código. Si es así, cambiá la configuración donde está el ejecutable siguiendo estos pasos: en la configuración sobreescribí el valor por defecto incorporando esta línea: 
"prolog.executablePath": "C:\\Program Files\\swipl\\bin\\swipl"

o donde hayas instalado SWI Prolog (en mi caso lo instalé en C:\Program Files\swipl, eso genera una carpeta bin donde está swipl.exe)

11: Miércoles 06/06
Te dejamos el link al parcial de Funcional: FMI (23/05/2018) (con una posible resolución)
Comenzaremos a introducirnos en el Paradigma Lógico: Módulo 1: Predicados. Individuos. Consultas. Universo Cerrado.
Luego seguiremos con Módulo 2: Variables. Consultas Existenciales. Reglas simples y compuestas. Inversibilidad.
Y por último estaremos iniciando el Módulo 3: Estructuras de datos. Individuos simples y compuestos.

10: Miércoles 23/05
De 18:00 a 21:00 es el examen de Funcional. Revisen las condiciones para hacerlo en formato digital o en papel en la lista de correo pdep-mn@googlegroups.com
Para preparar el examen recordá que tenés un repositorio con enunciados y algunas soluciones (te recomendamos que practiques los parciales Huber, Expertos en Maquinitas, Monsters Inc., en general los del año pasado).
Luego, dependiendo del tiempo, quizás veamos un uso comercial de lo que acabamos de aprender en el paradigma funcional. En particular
  • la programación funcional Web reactiva, a través de un ejemplito sencillo: un contador donde el usuario puede sumar o restar su valor.
  • cómo se trabaja en la base documental MongoDB, resolviendo requerimientos de un modelo jerárquico mediante la técnica Map/Reduce (es decir, las funciones map, filter y fold que ya conocés de Haskell). Tenés un Script introductorio MongoDB - Ejemplo Remisería con la explicación y un ejemplo que podés descargarte

9: Miércoles 16/05
Primero repasaremos el Módulo 7: Sistema de tipos.
Luego vamos a resolver el parcial Obras sociales recargado, para lo cual te recomendamos que lo encares en tu casa primero.

8: Miércoles 09/05
A las 18 comenzaremos con la corrección de la segunda entrega del TP de Funcional. 
Recordá entregarlo con tiempo (antes de las 09:00 del mismo miércoles) para que cada tutor tenga tiempo de correr los tests, darle una primera leída, etc.
Si no vas a poder venir por una situación especial, avisá por mail a tu tutor.

Luego, a las 21, repasaremos foldr y cómo la currificación de funciones permite la aplicación parcial.
Y por último comenzaremos a estudiar el Módulo 7: Sistema de tipos.
7: Miércoles 02/05
Comenzaremos resolviendo el parcialito de la clase pasada. Te dejamos el enunciado por si no pudiste estar y lo querés llevar hecho para comparar soluciones y hacer preguntas.
Luego seguiremos trabajando el Módulo 5: Orden superior, en particular la familia de funciones fold y ($).
Y finalmente cerraremos con el Módulo 6: Expresiones lambda.

6: Miércoles 25/04
Ya está liberada la Entrega 2 del TP de Funcional, que tiene que pasar todos estos tests.
Para entender cómo ejecutar los tests, tenés que leer el apunte Anexo A: Testeo con HSpec.

La clase que viene estaremos cerrando el Módulo 4: Recursividad: concat, reverse, maximum. Evaluación diferida.
Luego estudiaremos el Módulo 5: Orden superior: filter, map, any, all, flip.
Y sobre el final de la clase haremos el tercer parcialito de Funcional.
Con el contenido de la clase ya podrás resolver los puntos 1, 4, 5 y 6 de la segunda entrega del TP.

5: Miércoles 18/04

 A partir de las 18 es la Entrega 1 del TP de Funcional. 
Es presencial, de manera que si no venís tenés que enviar un mail a tu tutor ofreciendo un día alternativo para defender el TP. Independientemente de esto, 
1. en cuanto tengas listo el TP tenés que mandar un mail a tu tutor (y su backup si lo tenés) con la resolución en un .hs. La fecha límite es el miércoles 18 a las 09:00 hs., pero lo ideal es que lo pases el martes a la noche, para darnos tiempo a bajarlo (y testearlo nosotros).
2. también tenés que adjuntar en un archivo aparte la forma en que validaste los casos de prueba escritos en el TP
(la salida por consola)
3. por lo general, los tutores tienen una notebook, por lo que no es necesario que consigas una, pero charlalo con él en esta semana.
4. y también coordinen si vos podés venir temprano ese día, para tener una idea.
Es probable que ese día:
- haya alumnos enfermos, tienen que mandar el TP y avisar para defenderlo otro día
- pero también si hay tutores enfermos o que no van a venir, esperen pacientemente que otro tutor se va a sentar con ustedes.
Por eso es importante que o bien traigan en una notebook el TP realizado o bien tengan un pendrive con varias copias del TP. Tengan en cuenta estas pautas, porque los que no hagan la entrega van a perder la posibilidad de rendir el parcial de Funcional (van directamente a recuperatorio).

Tip: si estás buscando todo lo que puede hacer una lista, tenés un buscador específico de Haskell, hoogle.
http://hackage.haskell.org/package/base-4.11.0.0/docs/Data-List.html

Luego, (intentaremos que sea entre 20:45 y 21:00) vamos a explicar del  Módulo 4: Recursividad. Evaluación diferida.

4: Miércoles 11/04
Primero terminaremos el Módulo 3: Modelado de información. Nos queda ver múltiples constructores, y el ejemplo de los alumnos.
Luego haremos el postergado parcialito.
Y tras el recreo, resolveremos el parcialito.

3: Miércoles 04/04
Primero vamos a resolver el parcialito de la semana pasada, respondiendo las dudas que hayan quedado.
Luego veremos el Módulo 3: Modelado de información.
Para hacer en casa: las lecciones 8 y 9 del libro interactivo del paradigma funcional Mumuki

2: Miércoles 28/03 . 
Para llevar impreso: Módulo 2: Composición. Aplicación parcial
Para hacer en casa: libro interactivo del paradigma funcional Mumuki (la lección 5 - Aplicación parcial, ejercicios 1 a 4).
En papel, tenés la Guía 1: Ejercicios básicos, aplicación parcial, composición, tuplas.
Si querés tener integrado el entorno por un lado iinstalá Haskell en tu máquina y después como editor de texto te recomendamos:
Para el parcialito tené a mano la Guía de lenguajes.

Les dejamos el enunciado del parcialito para los que no pudieron venir (y para los demás también!). Vamos a estar resolviéndolo la clase que viene.


Y ya podés chusmear el enunciado 1 del TP de Funcional, aunque vas a necesitar una clase más para poder arrancar a resolverlo cómodo.


1: Miércoles 21/03 Presentación de la materia y de los profesores. 
Para hacer en casa: empezá a seguir el libro interactivo del paradigma funcional Mumuki (las lecciones 1, 2 y 7)


Comments