====== Material ====== ===== Teórico/Práctico ===== * {{:algo1:2014-1:digesto.pdf|Digesto}} de axiomas y teoremas para cálculo proposicional y expresiones cuantificadas. * {{:algo1:2014-1:imperativo.pdf|Digesto}} para la programación imperativa. ===== Laboratorio ===== | ^ Enunciado ^ Teóricos ^ ^ Presentación | {{:algo1:2014-1:algoritmos_y_estructuras_de_datos_i.pdf|Presentación Inicial}} || ^ Proyecto 1 | [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-2/proyectos/proy1.pdf|Proyecto 1]] |[[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-2/teoricos/html/clase2_linux.html|Linux y consola]] | ^ ::: | ::: | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/CLASE_1_proy_1.html|Haskell, GHCI, secciones, map, filter]] | ^ ::: | ::: | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/CLASE_2_proy_1.html|Tipos, clases de tipos y más]] | ^ Proyecto 2 | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/proy2.pdf|Proyecto 2]] | [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/proy2_tiposdedatos.hs|Ejemplos tipos de datos (archivo .hs)]] | ^ ::: | ::: |[[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/proyecto_2_CLASE_1.html|Tipos de datos, deriving, case, Maybe]] | ^ Proyecto 3 | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/proy3.pdf|Proyecto 3]] ([[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-2/proyectos/proyecto3_archivos_alumnos.zip|Archivos]]) | [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-2/teoricos/html/clase6_tad.html|Módulos, TADs, instanciaciones de clases]]| ^ ::: | ::: | [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/proy3_lista_invariante.hs|Lista con invariante de orden (archivo .hs)]] | ^ Proyecto 4 | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/proy4.pdf|Proyecto 4]] | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/clase_1_de_c.html|Programación C, GDB]]| ^ Proyecto 5 | [[http://www.cs.famaf.unc.edu.ar/~mdoming/docencia/algo1/proy5.pdf|Proyecto 5]] | [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/arreglo.c|Arreglo]], [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/inicializar.c|Inicialización]]; [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/struct.c|Struct]], [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/struct2.c|Struct 2]]| Ejemplos de programas en C: * Proyecto 4 / Proyecto 5: * Código C: [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/helloworld.c|Hello, World!]] * Código C: [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/assignacion.c|Assignación múltiple]] * Código C: [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/while.c|While]] * Código C: [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/mcd.c|Mcd]] * Código C: [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/mcdFuncion.c|Mcd con función]] Enunciados y teóricos años anteriores: * Código C: [[http://www.cs.famaf.unc.edu.ar/~hoffmann/algo1/2013-1/collatz.c|Collatz]] * Introduccion a GDB. Por Marco Brunello y Leandro Ramos. {{:algo1:2011-2:gdb.pdf|Presentación}}, {{:algo1:2011-2:ejemplo_gdb.tar.gz|ejemplos}}. [[https://github.com/WilliamHackmore/linuxgems/blob/master/cheat_sheet.org.sh|Resumen de comandos de consola Linux]] y [[http://cli.learncodethehardway.org/book/| un libro sobre el tema]]. ===== Haskell ===== * [[http://www.cs.famaf.unc.edu.ar/~hoffmann/aprendehaskell/main.html|¡Aprende Haskell por el bien de todos!]] * [[http://www.lcc.uma.es/~blas/pfHaskell/gentle/index.html|Una introducción agradable a Haskell]] * [[http://www.haskell.org/hoogle/|Hoogle, búsqueda de funciones por nombre o tipo]]. * [[http://www.haskell.org/ghc/docs/latest/html/users_guide/ghci.html|Using GHCI]] ===== Lenguaje C ===== * [[http://www.cs.famaf.unc.edu.ar/~damian/algoritmos1/lenguaje_C/cursc.html|En castellano pero básico]]. * [[http://www.cs.cf.ac.uk/Dave/C/ | En ingles pero muy completo]]. * [[http://www.cs.famaf.unc.edu.ar/~damian/algoritmos1/lenguaje_C/www.phim.unibe.ch/comp_doc/c_manual/C/cref.html|Manual de referencia en inglés]]. * {{algo1:curso-c.pdf|Otro en castellano}}. ===== Lecturas recomendadas ===== * [[http://www.cse.chalmers.se/~rjmh/Papers/whyfp.html|Why Functional Programming Matters]] John Hughes. * [[http://www.cs.famaf.unc.edu.ar/~damian/algoritmos1/lecturas/dicosmo.html|Trampa en el cyberespacio]]. * [[http://www.cs.famaf.unc.edu.ar/~damian/algoritmos1/lecturas/sciam_scc/SciAmSept1994.html|Software's Chronic Crisis]]. * [[http://www.vialibre.org.ar/wp-content/uploads/2009/03/evoto.pdf|Voto electrónico. Los riesgos de una ilusión]]. Federico Heinz. * [[http://www.xmonad.org/|X11 windows manager in Haskell!]]. ===== Media ===== * [[http://www.cs.famaf.unc.edu.ar/~damian/media/charla_fede.html|Charla sobre Software Libre]] de Federico Heinz 6/5/2013.