Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UP Lecture 30

UP Lecture 30

Compilers
Final Review
(202505)

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez | Compilers | 3 jgs jgs GitHub

    Classroom Final Project: June 01 https://classroom.github.com/a/pTxhXv6V
  2. Dr. Javier Gonzalez-Sanchez | Compilers | 4 jgs jgs Final

    Project ▪ Lexer ▪ Parser ▪ Parser detects syntax errors ▪ Semantic errors identified ▪ Code generation: variables, operator precedence, control structures, methods ▪ Your intermediate code (assembler) runs in a VM Submission includes: ▪ Code in your GitHub repository (provided as GitHub Classroom) – add link on Blackboard ▪ Final Report – PDF file on Blackboard ▪ Recorded Demonstration Video – submit link on Blackboard
  3. Dr. Javier Gonzalez-Sanchez | Compilers | 10 jgs jgs 0.

    Start Here https://github.com/UPGDLHUB/compiler-plugin
  4. Dr. Javier Gonzalez-Sanchez | Compilers | 23 jgs jgs Example

    ▪ https://tabatkins.github.io/railroad-diagrams/generator.html
  5. Dr. Javier Gonzalez-Sanchez | Compilers | 24 jgs jgs Example

    ▪ https://www.graphviz.org/pdf/neatoguide.pdf
  6. Dr. Javier Gonzalez-Sanchez | Compilers | 25 jgs jgs LISP

    (defun factorial (n) (if (<= n 0) 1 (* n (factorial (- n 1))) ) ) FACTORIAL (factorial 1000) result? … double factorial (double n) { if (n<=1) return 1; else return n * factorial (n-1); } result?
  7. jgs jgs Compilers Javier Gonzalez-Sanchez, Ph.D. [email protected] Spring 2025 Copyright.

    These slides can only be used as study material for the Compilers course at Universidad Panamericana. They cannot be distributed or used for another purpose.