Clase 1
Temas y actividades | Lecturas de apoyo principales | | - Todos los ejercicios hechos en clase están resueltos acá.
|
Clase 2
Temas y actividades | Material de apoyo | - Preguntas de temas anteriores y repaso.
- Más de guardas. Y cuándo hacemos mal uso de ellas.
- Realización de ejercicios pedidos de mumuki entre todos.
- Inferencia de tips vs. Chequeo de tipos.
- Intro a tuplas.
- Intro a Orden Superior.
- Recursividad.
- Preguntas de temas siguientes.
- Ejemplo 1 de recursividad: factorial
- Ejemplo 2 de recursividad: esPrimo usando tieneDivisorAPartirDe
- Acá los casos base estaban embebidos en una misma expresión. La función tieneDivisorAPartirDe tiene una sola línea.
- Ejercicio de recursividad entre todos, por guardas y por pattern matching: sumarPrimerosN
- Recursividad + Orden superior: afectarCon
| - Módulo 2.
- Todas las preguntas (con respuestas) y los ejercicios realizados están acá.
|
Clase 3
Temas y actividades | Material de apoyo | - Preguntas de temas anteriores y repaso.
- Aplicaciones del Paradigma Funcional (ejemplo FRP)
- Inferencia de Tipos.
- Listas.
- Ejemplo con alumnos para asimilar la división de cabeza y cola.
- Ejemplos de cosas que sí son listas, y cosas que no lo son.
- Intro a listas infinitas.
- Definición de funciones básicas de listas.
- cabeza (head)
- longitud (length)
- suma (sum)
- aplanar (concat)
- Orden superior con listas.
- filtrar (filter)
- convertir (map) (jamás "convertimos" nada acá, lo que pasa es que "generarNuevaListaAPartirDeAplicarUnaFunciónConCadaElemento" era largo)
- algunoCumple (any)
- todosCumplen (all)
- Ejemplo sonReNardos resuelto de 3 formas diferentes. Comparación y crítica.
| - Módulo 3 y Módulo 6.
- Todas las preguntas (con respuestas) y los ejercicios realizados están acá.
|
Clase 4
Temas y actividades | Material de apoyo | - Preguntas de temas anteriores y repaso.
- Aclaración del "Foldable a".
- Tipos y Clases (o TypeClasses). Sobre todo para los números, que a veces traen problemas.
- Realización de ejercicios pedidos de mumuki.
- Realización de ejercicios de primera entrega del TP integrador.
- Explicitamos el tipo de algunas funciones para corregir una inferencia no deseada.
- Composición.
- Definición.
- Tipo.
- Creación de nuestra propia función composición.
- Ejemplos con morfi.
- Composición de lista de funciones.
- Aplicación parcial.
- Definición.
- Ejemplos.
- Combinación con composición.
- Evaluación diferida.
- Definición.
- Ejemplos.
- Evaluación cortocircuito (aparece en muchos lenguajes y paradigmas).
- Listas infinitas (esto sí es bien funcional), con ejemplos.
- Ejemplo con Composición + Aplicación parcial + Listas infinitas.
| - Módulo 5 y Módulo 7 (composición y aplicación parcial).
- Todas las preguntas (con respuestas) y los ejercicios realizados están acá.
|
Clase 5
Temas y actividades | Material de apoyo | - Preguntas de temas anteriores y repaso.
- Generar una lista de funciones parcialmente aplicadas.
- Lambdas
- Cuándo usarlas, y cuándo no usarlas.
- personasConLetraIEntreLasPrimeras3DeSuNombre
- Fold (foldr y foldl).
- sumar (con paso a paso)
- multiplicar
- elevar (con paso a paso comparando foldr con foldl)
- concatenar
- componerTodo
- transformar (mostrando también el resultado diferente al usar foldr o foldl)
- Data, con múltiples constructores.
- Primeras funciones ad-hoc, y paramétricas, aunque no hablamos de esas definiciones y sus diferencias aún.
- felicidadBasica
- nuevaFelicidadBasica
- nuevaFelicidadBasicaSegun
| - Módulo 6: Foldr y foldl.
- Módulo 7: Lambdas y más foldl.
- Módulo 4: Data (tipos de datos definidos por el usuario).
- Todas las preguntas (con respuestas) y los ejercicios realizados están acá.
|
Clase 6
Temas y actividades | Material de apoyo | | - Módulo 8, para polimorfismo y currificación.
- Módulo 3, para listas por comprensión.
- Todas las preguntas (con respuestas) y los ejercicios realizados están acá.
- Videos (quizá los deje por un par de días y luego los borre, no me gusta cómo quedaron)
|
Clase 7
Temas y actividades | Material de apoyo | | |
Parcial
Temas y actividades | Material de apoyo | | |
|
|