Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
teaching:cc4101 [2018/06/27 17:16] etanterteaching:cc4101 [2022/03/08 11:05] etanter
Line 4: Line 4:
 **Material de referencia** **Material de referencia**
   * [[http://www.dcc.uchile.cl/~etanter/preplai|PrePLAI]], breve introducción a la programación funcional, Racket, y ''%%#lang play%%''   * [[http://www.dcc.uchile.cl/~etanter/preplai|PrePLAI]], breve introducción a la programación funcional, Racket, y ''%%#lang play%%''
-  * [[http://cs.brown.edu/~sk/Publications/Books/ProgLangs/2007-04-26/plai-2007-04-26.pdf|PLAI]] (S. Krishnamurthi) - //capítulos 1 a 14 (para macros, capítulos 35-37)//+  * [[http://cs.brown.edu/~sk/Publications/Books/ProgLangs/2007-04-26/plai-2007-04-26.pdf|PLAI]] (S. Krishnamurthi) - //capítulos 1 a 14 (para macros, capítulos 35-37)// ({{teaching:cc4101:plai-2007-04-26.pdf|copia local del libro}})
   * [[http://www.dcc.uchile.cl/~etanter/ooplai|OOPLAI]], para la parte sobre objetos   * [[http://www.dcc.uchile.cl/~etanter/ooplai|OOPLAI]], para la parte sobre objetos
- +    * {{teaching:cc4101:pl_overview.pdf|PL Overview}}, una ilustración simplista de los elementos claves en la definición e implementación de los lenguajes de programación 
-**Apuntes complementarios** +
-  * [[http://users.dcc.uchile.cl/~etanter/play-interps/|Interpretes del curso]] (''%%#lang play%%''+
-  * {{teaching:cc4101:pl_overview.pdf|PL Overview}}, una ilustración simplista de los elementos claves en la definición e implementación de los lenguajes de programación +
   * [[http://users.dcc.uchile.cl/~etanter/scope/|A Note on Dynamic Scope]], para complementar el PLAI respecto del tema de alcance dinámico   * [[http://users.dcc.uchile.cl/~etanter/scope/|A Note on Dynamic Scope]], para complementar el PLAI respecto del tema de alcance dinámico
   * [[https://users.dcc.uchile.cl/~etanter/recursion/|A Note on Recursion]], para complementar el PLAI respecto del tema de la recursión   * [[https://users.dcc.uchile.cl/~etanter/recursion/|A Note on Recursion]], para complementar el PLAI respecto del tema de la recursión
-  * [[http://learnyouahaskell.com/|Learn You a Haskell]] capítulos 3 y 8, para complementar el PLAI respecto de las clases de tipos en Haskell+ 
 +**Material complementario** 
 +  * [[http://users.dcc.uchile.cl/~etanter/play-interps/|Interpretes del curso]] (''%%#lang play%%''
 +  * [[https://drive.google.com/drive/folders/1--5pINw75WjlfWhDevB7tz8KmTaoAmCC?usp=sharing|slides de las clases]]  
 +  * [[https://www.youtube.com/playlist?list=PLv3byGkm6N0CvCRaQTB52oazPrvz6PsBe|videos de las clases del 2021/1]]
  
 **Referencias adicionales (disponibles en biblioteca FCFM)** **Referencias adicionales (disponibles en biblioteca FCFM)**
Line 18: Line 19:
   * [[http://mitpress.mit.edu/sicp/full-text/book/book.html|Structure and Interpretation of Computer Programs]] (H. Abelson, G. Sussman, J. Sussman)   * [[http://mitpress.mit.edu/sicp/full-text/book/book.html|Structure and Interpretation of Computer Programs]] (H. Abelson, G. Sussman, J. Sussman)
   * Sobre Scheme: The Little Schemer (D. Friedman, M. Felleisen)   * Sobre Scheme: The Little Schemer (D. Friedman, M. Felleisen)
-  * Sobre Haskell: [[http://learnyouahaskell.com/|Learn You a Haskell]] (excelente libro sobre programación funcional en general, y Haskell en particular)+  * Sobre Haskell: [[http://learnyouahaskell.com/|Learn You a Haskell]] (excelente libro sobre programación funcional en general, y Haskell en particular) - Ver capítulos 3 y 8 para complementar el PLAI respecto de las clases de tipos en Haskell
   * Sobre sistemas de tipos: capitulos 24-31 del PLAI, o mucho más exhaustivo, Types and Programming Languages (B. Pierce)   * Sobre sistemas de tipos: capitulos 24-31 del PLAI, o mucho más exhaustivo, Types and Programming Languages (B. Pierce)
  
Line 28: Line 29:
   * 1 examen   * 1 examen
  
-La Nota de Control de se calculará como el promedio ponderado del examen (50%) y del promedio de los controles (50%).+La Nota de Control se calculará como el promedio ponderado del examen (50%) y del promedio de los controles (50%).
 Un alumno que obtenga nota promedio de controles mayor o igual a 5.5 queda automáticamente eximido del examen, pero tiene la opción de rendirlo voluntariamente. Un alumno que obtenga nota promedio de controles mayor o igual a 5.5 queda automáticamente eximido del examen, pero tiene la opción de rendirlo voluntariamente.
  
Line 44: Line 45:
   * La entrega se debe hacer vía U-Cursos hasta las 23:59 del día de entrega de la tarea. Se aceptarán tareas atrasadas con una penalización de 1 punto por dia.   * La entrega se debe hacer vía U-Cursos hasta las 23:59 del día de entrega de la tarea. Se aceptarán tareas atrasadas con una penalización de 1 punto por dia.
   * Una función no comentada se ignorará por completo, es decir, se borrará del código entregado. Se entiende por función comentada una función que incluye sobre ella un comentario con su nombre, firma y breve descripción.   * Una función no comentada se ignorará por completo, es decir, se borrará del código entregado. Se entiende por función comentada una función que incluye sobre ella un comentario con su nombre, firma y breve descripción.
-  * Las funciones que no cumplan con las interfaces definidas en la tarea no serán consideradas para la evaluación.+  * Las funciones que no cumplan con las interfaces definidas en la tarea no serán consideradas para la evaluación. Una función cumple con la interfaz definida en la tarea si recibe los mismos argumentos obligatorios y en el mismo orden. Las funciones pueden recibir además argumentos opcionales, si así lo desean. 
   * El uso del foro en U-Cursos es altamente recomendado para la discusión del enunciado y resolución de dudas por parte del equipo docente. Si hay alguna modificación sustancial al enunciado en base a discusiones en el foro, se anunciará vía foro en un post nuevo realizado por un miembro del equipo docente actualizando a su vez el enunciado.   * El uso del foro en U-Cursos es altamente recomendado para la discusión del enunciado y resolución de dudas por parte del equipo docente. Si hay alguna modificación sustancial al enunciado en base a discusiones en el foro, se anunciará vía foro en un post nuevo realizado por un miembro del equipo docente actualizando a su vez el enunciado.
   * La entrega vía U-Cursos debe constar de dos archivos: Uno donde se encuentre el código fuente de la tarea y otro con todos los tests que se usaron durante el desarrollo de ésta.    * La entrega vía U-Cursos debe constar de dos archivos: Uno donde se encuentre el código fuente de la tarea y otro con todos los tests que se usaron durante el desarrollo de ésta. 
Line 59: Line 61:
 El hecho de que pueda recrear la solución de memoria se considera como prueba de que se entendió efectivamente. El hecho de que pueda recrear la solución de memoria se considera como prueba de que se entendió efectivamente.
  
-Toda violación podrá ser reportada a las autoridades de la Facultad, solicitando un sumario, poniendo en riesgo su continuidad en esta Casa de Estudios. +Toda violación podrá ser reportada a las autoridades de la Facultad, solicitando un sumario.
  
-{{teaching:cc4101:resources:macros1.rkt}}