Campus (opens new window) Chat (opens new window) Recursos Horarios Organization (opens new window)
Lessons
- Lunes 2023/05/08
- Encuesta del alumnado. Fin de curso. Egg oop parser. Extended interpreter. TFA. Training Exam
- Vídeo
- Related Labs: "egg-oop-parser" "extended-egg" "tfa"
- Related Themes: "Encuesta al alumnado" "Fin de Curso" "Currying" "Scope Analysis and Translation: Translating From Egg to JavaScript" "Training Exam"
- Miércoles 2023/05/03
- Encuesta del alumnado. Retos de la semana. Fin de curso. Egg oop parser. Extended interpreter. TFA. Training Exam
- Vídeo
- Related Labs: "egg-oop-parser" "extended-egg" "tfa"
- Related Themes: "Encuesta al alumnado" "Fin de Curso" "Currying" "Training Exam"
- Martes 2023/05/02
- Encuesta del alumnado. Retos de la semana. Fin de curso. Egg oop parser. Extended interpreter. TFA. Training Exam
- Vídeo
- Related Labs: "egg-oop-parser" "extended-egg" "tfa"
- Related Themes: "Encuesta al alumnado" "Fin de Curso" "Currying" "Training Exam"
- Miércoles 2023/04/26
- Encuesta del alumnado. Fin de curso. Egg Interpreter. Egg oop parser
- Vídeo
- Related Labs: "egg-interpreter" "egg-oop-parser" "extended-egg" "tfa"
- Related Themes: "Encuesta al alumnado" "Fin de Curso" "Construcción de un Repeat Evaluate Print Loop para Egg" "Interpretación de los Nodos del AST de Egg" "Interpretation of Assignment Expressions" "Function Interpretation" "Lexical Analysis with moo" "Nearley.js"
- Martes 2023/04/25
- Encuesta del alumnado. Fin de curso. Egg Interpreter
- Vídeo
- Related Labs: "egg-interpreter" "egg-oop-parser" "extended-egg" "tfa"
- Related Themes: "Encuesta al alumnado" "Construcción de un Repeat Evaluate Print Loop para Egg" "Interpretación de los Nodos del AST de Egg" "Interpretation of Assignment Expressions" "Function Interpretation" "Lexical Analysis with moo" "Nearley.js"
- Lunes 2023/04/24
- Encuesta del alumnado. Fin de curso. Egg Interpreter
- Vídeo
- Related Labs: "egg-interpreter"
- Related Themes: "Encuesta al alumnado" "Construcción de un Repeat Evaluate Print Loop para Egg" "Interpretación de los Nodos del AST de Egg" "Interpretation of Assignment Expressions" "Function Interpretation" "Lexical Analysis with moo" "Nearley.js"
- Miércoles 2023/04/19
- Encuesta del alumnado. Egg Interpreter
- Vídeo
- Related Labs: "lexer-generator" "egg-interpreter"
- Related Themes: "Encuesta al alumnado" "Construcción de un Repeat Evaluate Print Loop para Egg" "Interpretación de los Nodos del AST de Egg" "Interpretation of Assignment Expressions" "Function Interpretation" "Lexical Analysis with moo" "Como Escribir un Generador de Analizadores Léxicos" "Repo Moo examples" "RegExps en Otros lenguajes: Perl, Python, Ruby, C, C++, sed, flex" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "Nearley.js" "Gramáticas Independientes del Contexto"
- Martes 2023/04/18
- Encuesta del alumnado. Lexical Analyzer Generator
- Vídeo
- Related Labs: "lexer-generator"
- Related Themes: "Encuesta al alumnado" "Lexical Analysis with moo" "Como Escribir un Generador de Analizadores Léxicos" "Repo Moo examples" "RegExps en Otros lenguajes: Perl, Python, Ruby, C, C++, sed, flex" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "Nearley.js" "Gramáticas Independientes del Contexto"
- Lunes 2023/04/17
- Regular Expressions, lastIndex, sticky flag, lexical analyzers
- Vídeo
- Related Labs: "lexer-generator"
- Related Themes: "Expresiones Regulares y Análisis Léxico" "Introducción a las Expresiones Regulares" "Unicode, UTF-16 and JavaScript" "Lexical Analysis with moo" "Como Escribir un Generador de Analizadores Léxicos" "RegExps en Otros lenguajes: Perl, Python, Ruby, C, C++, sed, flex" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "Nearley.js" "Gramáticas Independientes del Contexto"
- Miércoles 2023/04/12
- The Earley Algorithm
- Vídeo
- Related Labs: "egg-parser"
- Related Themes: "The Earley Algorithm" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "Nearley.js" "Gramáticas Independientes del Contexto"
- Martes 2023/04/11
- El lenguaje Egg, ASTs para Egg,El generador de analizadores sintácticos Nearley.js, El generador de analizadores léxicos Moo. Moo-ignore
- Vídeo
- Related Labs: "egg-parser"
- Related Themes: "Nearley.js" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "The Earley Algorithm" "Gramáticas Independientes del Contexto" "ASTs: Árboles de Análisis Abstracto" "The Design of Programming Languages"
- Lunes 2023/04/10
- El lenguaje Egg, ASTs para Egg,El generador de analizadores sintácticos Nearley.js, El generador de analizadores léxicos Moo. Moo-ignore
- Vídeo
- Related Labs: "egg-parser"
- Related Themes: "Nearley.js" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "The Earley Algorithm" "Gramáticas Independientes del Contexto" "ASTs: Árboles de Análisis Abstracto" "The Design of Programming Languages"
- Miércoles 2023/03/29
- type checking, El lenguaje Egg, ASTs para Egg,El generador de analizadores sintácticos Nearley.js, El generador de analizadores léxicos Moo. Moo-ignore
- Vídeo
- Related Labs: "functions" "egg-parser"
- Related Themes: "Análisis de Tipos: Conceptos Básicos" "Un Lenguaje con Funciones Polimorfas" "CS at Cornell. 9. Interpreters" "CS at Cornell. Lecture 26: Type Inference and Unification" "Gramáticas Independientes del Contexto" "ASTs: Árboles de Análisis Abstracto" "The Design of Programming Languages" "Nearley.js" "Repo ULL-ESIT-PL/learning-nearley" "Lexical Analysis with moo" "The Earley Algorithm"
- Martes 2023/03/28
- type checking
- Vídeo
- Related Labs: "functions"
- Related Themes: "Análisis de Tipos: Conceptos Básicos" "Code Smells. The Open/Closed Principle. Strategy Pattern" "Un Lenguaje con Funciones Polimorfas" "CS at Cornell. 9. Interpreters" "CS at Cornell. Lecture 26: Type Inference and Unification" "AST types"
- Lunes 2023/03/27
- scope analysis revisited. Reincorporación de Javier
- Vídeo
- Related Labs: "functions"
- Related Themes: "AST types" "Hello AST Types repo"
- Miércoles 2023/03/22
- Reviewing the exam. Adding functions Lab: Syntaxis
- Vídeo
- Related Labs: "constant-folding" "functions"
- Related Themes: "AST types" "Hello AST Types repo" "Recast" "Understanding the AST Types API" "Rasengar AST-builder" "Jscodeshift" "Jscodeshift API" "jscodeshift tree transformation module"
- Lunes 2023/03/20 Examen
- 12:00. Aula 1.5. !PAE? 1h45m: 2h
- Miércoles 2023/03/15
- Transforming the AST
- Vídeo
- Related Labs: "spread-operator"
- Related Themes: "AST types" "Hello AST Types repo" "Recast" "Understanding the AST Types API" "Rasengar AST-builder" "Jscodeshift" "Jscodeshift API" "jscodeshift tree transformation module"
- Martes 2023/03/14
- Arrow and Ordinary functions. Transforming the AST. Publishing a Node.js Module in GitHub in GitHub Registry. Static Generators.
- Vídeo
- Related Labs: "spread-operator"
- Related Themes: "AST types" "Hello AST Types repo" "Creating and Publishing a Node.js Module in GitHub and NPM Registries" "Vuepress" "Nextra"
- Lunes 2023/03/13
- ast transformations: warning arguments.callee, translating the spreaad operator, this and functions in JS
- Vídeo
- Related Labs: "spread-operator"
- Related Themes: "AST types" "Hello AST Types repo" "Recast"
- Miércoles 2023/03/08
- Runtime support, Code generation, Scope Analysis, Transforming the AST
- Vídeo
- Related Labs: "scope-intro" "spread-operator"
- Related Themes: "AST types" "Hello AST Types repo" "Recast" "Scope Analysis: teacher old notes" "Teacher old notes: Práctica: Calculadora con Análisis de Ámbito"
- Martes 2023/03/07
- Compiler runtime support, The art of language design, Scope Analysis, Transforming the AST
- Vídeo
- Related Labs: "scope-intro"
- Related Themes: "AST types" "Example of Visiting the AST with AST Types" "Hello AST Types repo" "Recast" "Scope Analysis: teacher old notes" "Teacher old notes: Práctica: Calculadora con Análisis de Ámbito"
- Lunes 2023/03/06
- Compiler runtime support, The art of language design, Scope Analysis, Transforming the AST
- Vídeo
- Related Labs: "scope-intro"
- Related Themes: "AST types" "Recast"
- Miércoles 2023/03/01
- Last week with Israel. Extending Mocking, Compiler runtime support, Comma operator, IDs, print, assignment, reserved words, lexical ambiguities, The Art of Language Design, Scope Analysisis, Transforming the AST
- Vídeo
- Related Labs: "scope-intro"
- Related Themes: "Creating and publishing a node.js module at GitHub and NPM" "Documentation"
- Martes 2023/02/28
- Last week with Israel. Traversing the AST with estraverse, Transforming the AST
- Vídeo
- Related Labs: "espree-logging"
- Related Themes: "Traversing the AST with estraverse" "The Phases of a Translator" "Creating and publishing a node.js module at GitHub and NPM" "Documentation"
- Lunes 2023/02/27
- Last week with Israel. Compiler runtime support, Traversing the AST with estraverse, Transforming the AST
- Vídeo
- Related Labs: "espree-logging"
- Related Themes: "Traversing the AST with estraverse" "The Phases of a Translator"
- Miércoles 2023/02/22
- GitHub Actions, Continuous Integration, Adding runtime support to the translated code
- Vídeo
- Related Labs: "arith2js" "hello-compiler"
- Related Themes: "Repo hello-jison" "Jison notes by crguezl" "Jisons: A community fork of Jison" "Testing with mocha" "Covering with nyc" "Mocking and Stubbing" "GitHub Actions and Continuous Integration"
- Miércoles 2023/02/15
- Unary minus, %prec, AST for factorial, Code generation, Traversing the AST with estraverse
- Vídeo
- Related Labs: "arith2js"
- Related Themes: "Repo hello-jison" "Precedences: %prec" "Jison notes by crguezl" "Testing with mocha" "Covering with nyc" "Mocking and Stubbing"
- Martes 2023/02/14
- Generating an Espree AST for an arithmetic calculator
- Vídeo
- Related Labs: "arith2js"
- Related Themes: "Repo hello-jison" "Jison playground" "Jison notes by crguezl" "Procesando la línea de argumentos con commander"
- Lunes 2023/02/13
- Lexing and Parsing with Jison
- Vídeo
- Related Labs: "arith2js"
- Related Themes: "Repo hello-jison" "Procesando la línea de argumentos con commander"
- Miércoles 2023/02/08
- A closer Look at the Lexing and Parsing Phases
- Vídeo
- Related Labs: "arith2js"
- Related Themes: "Repo hello-jison" "Jison docs" "Jison notes by crguezl"
- Martes 2023/02/07
- Un vistazo a las etapas de un compilador: generación de código. A closer Look at the Lexing and Parsing Phases
- Vídeo
- Related Labs: "arith2js"
- Related Themes: "Introduction to Compilers" "Code Generation in a Pascal Compiler written in C++" "Repo hello-jison" "Jison docs" "Jison notes by crguezl"
- Lunes 2023/02/06
- Un vistazo a las etapas de un compilador: análisis de ámbito, análisis de tipos, generación de código
- Vídeo
- Related Themes: "Introduction to Compilers" "AST Explorer"
- Miércoles 2023/02/01
- Visibilidad en los projects boards. Encuesta. Un vistazo a las primeras etapas de un compilador: análisis léxico, análisis sintáctico
- Vídeo
- Related Labs: "github-project-board" "visual-studio-code"
- Related Themes: "Introduction to Compilers" "AST Explorer"
- Martes 2023/01/31
- Encuesta. Primeras prácticas. Un vistazo a las primeras etapas de un compilador: análisis léxico
- Vídeo
- Related Labs: "github-campus-expert" "github-project-board" "visual-studio-code" "iaas"
- Related Themes: "CodeSpaces" "GitPod" "Introduction to Compilers"
- Lunes 2023/01/30
- Introducción a la metodología de trabajo, primeras tareas y prácticas, bibliografía, sistema de evaluación, TFA, etc.
- Vídeo
- Related Labs: "github-alu-form" "github-campus-expert"
- Related Themes: "Guía Docente y Metodología" "Referencias" "Using IAs in the Classroom" "GitHub Classroom Intro" "Aprender Markdown" "CodeSpaces" "GitPod"
All Labs
- Lab TFA: Final Project PL
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Martes 2023/04/25" "Miércoles 2023/04/26" "Martes 2023/05/02" "Miércoles 2023/05/03" "Lunes 2023/05/08"
- Lab (Optional TFA 2)Extending the Egg Interpreter
- Lab (Optional TFA 1) Adding OOP to the Egg Parser
- Lab The Egg Interpreter
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Miércoles 2023/04/19" "Lunes 2023/04/24" "Martes 2023/04/25" "Miércoles 2023/04/26"
- Grading Rubric
- Lab Lexer Generator
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Lunes 2023/04/17" "Martes 2023/04/18" "Miércoles 2023/04/19"
- Grading Rubric
- Lab egg-parser
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Miércoles 2023/03/29" "Lunes 2023/04/10" "Martes 2023/04/11" "Miércoles 2023/04/12"
- Grading Rubric
- Lab Adding Functions to the Calculator
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Miércoles 2023/03/22" "Lunes 2023/03/27" "Martes 2023/03/28" "Miércoles 2023/03/29"
- Grading Rubric
- Lab Constant Folding
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Miércoles 2023/03/22"
- Grading Rubric
- Lab ast-types: spread-operator
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Miércoles 2023/03/08" "Lunes 2023/03/13" "Martes 2023/03/14" "Miércoles 2023/03/15"
- Grading Rubric
- Lab Introduction to Scoping
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Miércoles 2023/03/01" "Lunes 2023/03/06" "Martes 2023/03/07" "Miércoles 2023/03/08"
- Grading Rubric
- Lab Espree Logging
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Lunes 2023/02/27" "Martes 2023/02/28"
- Grading Rubric
- Lab Hello Compilers
- Lab Translating Arithmetic Expressions to JavaScript
- Lab IAAS
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Martes 2023/01/31"
- Grading Rubric
- Lab GitPod and Visual Studio Code
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Martes 2023/01/31" "Miércoles 2023/02/01"
- Grading Rubric
- Lab GitHub Project Board
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Martes 2023/01/31" "Miércoles 2023/02/01"
- Grading Rubric
- Lab GitHub Campus Expert
- Accept Assignment
- Repos
- Classroom Dashboard
- Related Classes: "Lunes 2023/01/30" "Martes 2023/01/31"
- Grading Rubric
- Task GitHub-AluXXXX Form