User Tools

Site Tools


compilers_2024
Return to Home page

Formal Languages and Compilers Course (year 2023/2024)

Assistant: Stefano Scanzio
www: https://www.skenz.it/ss
email: stefano.scanzio [ AT_SYMBOL ] polito.it

Tools installation

Installation in your PC

Install Windows: How to download and install Jflex, Java, and Cup in the Windows operating system
Install Linux Bash: How to download, install and configure Jflex, Java, and Cup in the Ubuntu Linux operating system with bash shell
Install macOS: How to download, install and configure Jflex, Java, and Cup in the macOS operating system

Slides (Practice in classroom)

  • Practice 1: practice1_1.pdf, practice1_2.pdf, practice1_6.pdf
    Regular expressions and the scanner JFlex
    Other material: Context dependent regular expressions, inclusive states and exclusive states in Jflex

    Classroom example: exClass-1.zip.
    To compile and execute type the following commands:
    jflex exp.jflex
    javac Calc.java
    java Calc example_expr.txt

Laboratories

Other tools like Jflex/Cup

  • Ply Examples: Laboratories solutions with Ply (i.e., scanner and parser in Python)
    • Ply: Mini guide about the use of the Ply scanner and parser
  • Flex Bison Examples: Laboratories solutions with Flex and Bison (i.e., scanner and parser in C)
    • Flex Bison: Mini guide about the use of the Flex scanner and the Bison parser

Assignments

Previous assignments

  • Flex Bison: Implementation of laboratories using the Flex scanner and the Bison parser in C
  • Ply: Implementation of laboratories using the Ply scanner and parser
  • Go to LLVM: Translator from the Go language to LLVM
  • Julia to LLVM: Translator from the Julia language to LLVM

Useful Resources

Pseudo Assembler interpreter

Exams

Proposed Theses (Master Degree)

New research Master Theses (Research thesis, four different topics, starting July-December 2024) (watch the video)

Thesis proposals can be downloaded here: https://www.skenz.it/ss/theses
If interested, for informations, contact: stefano.scanzio [ AT_SYMBOL ] polito.it www: https://www.skenz.it/ss


If you found any error, or if you want to partecipate to the editing of this wiki, please contact: admin [at] skenz.it

You can reuse, distribute or modify the content of this page, but you must cite in any document (or webpage) this url: https://www.skenz.it/compilers_2024
/web/htdocs/www.skenz.it/home/data/pages/compilers_2024.txt · Last modified: 2025/04/01 13:08 by zioskenz

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki
Privacy Policy