User Tools

Site Tools


compilers
Return to Home page

Formal Languages and Compilers Course (year 2021/2022)

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

News

  • [2023/03/13]: Added slides of the first practice, and text of the first laboratory.
  • [2023/03/13]: Welcome to the Formal Languages and Compilers course

Calendar

  • [2023/03/23] from 17:30 to 19:00 (LABINF) → First laboratory (Group 2)
  • [2023/03/23] from 16:00 to 17:30 (LABINF) → First laboratory (Group 1)
  • [2023/03/23] from 14:30 to 16:00 (room 2C) → First classroom practice
  • [2023/03/22] from 21:00 to 22:30 (VC “Portale della Didattica”) → Live virtual classroom tutoring about tool installation (with assistance student)

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

  • Laboratory 1: laboratory_1.pdf
    Regular expression and the scanner JFlex
    Before starting try to compile and to understand the following example: exClass-1.zip

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

Rules and assignments for the 2021/2022 academic year: Assignments20212022

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 Master Thesis (Research thesis, starting time from now to October 2022)

Thesis about reducing communication latency in TSCH wireless sensor networks by using black and white listening techniques (see 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 (tel. 011 090 5438) 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
/web/htdocs/www.skenz.it/home/data/pages/compilers.txt · Last modified: 2023/03/13 09:43 by zioskenz

Privacy Policy