User Tools

Site Tools


compilers
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

News

  • [2024/04/09]: Updated practice calendar until the end of the course, added solution of the first laboratory, and text of the second laboratory.
  • [2024/03/21]: Welcome to the Formal Languages and Compilers course.

Calendar

  • [2024/06/13] from 21:00 to 22:30 (VC “Portale della Didattica”) → Live virtual classroom tutoring about practice exam -(with assistant student)
  • [2024/06/04] from 14:30 to 16:30/17:00 (room 2n) → Seventh classroom practice (EXAMS)
  • [2024/05/30] from 17:30 to 19:00 (LABINF) → Sixth laboratory (Group L-Z)
  • [2024/05/30] from 16:00 to 17:30 (LABINF) → Sixth laboratory (Group A-K)
  • [2024/05/30] from 14:30 to 16:00 (room 10) → Sixth classroom practice
  • [2024/05/23] from 17:30 to 19:00 (LABINF) → Sixth laboratory (Group L-Z)
  • [2024/05/23] from 16:00 to 17:30 (LABINF) → Sixth laboratory (Group A-K)
  • [2024/05/23] from 14:30 to 16:00 (room 10) → Fifth classroom practice
  • [2024/05/16] from 17:30 to 19:00 (LABINF) → Fifth laboratory (Group L-Z)
  • [2024/05/16] from 16:00 to 17:30 (LABINF) → Fifth laboratory (Group A-K)
  • [2024/05/16] from 14:30 to 16:00 (room 10) → Fourth classroom practice
  • [2024/05/09] from 17:30 to 19:00 (LABINF) → Fourth laboratory (Group L-Z)
  • [2024/05/09] from 16:00 to 17:30 (LABINF) → Fourth laboratory (Group A-K)
  • [2024/05/09] from 14:30 to 16:00 (room 10) → Third classroom practice
  • [2024/05/02] from 17:30 to 19:00 (LABINF) → Third laboratory (Group L-Z)
  • [2024/05/02] from 16:00 to 17:30 (LABINF) → Third laboratory (Group A-K)
  • [2024/05/02] from 14:30 to 16:00 (room 10) → Second classroom practice
  • [2024/04/11] from 17:30 to 19:00 (LABINF) → Second laboratory (Group L-Z)
  • [2024/04/11] from 16:00 to 17:30 (LABINF) → Second laboratory (Group A-K)
  • [2024/04/04] from 17:30 to 19:00 (LABINF) → First laboratory (Group L-Z)
  • [2024/04/04] from 16:00 to 17:30 (LABINF) → First laboratory (Group A-K)
  • [2024/04/04] from 14:30 to 16:00 (room 10) → First classroom practice
  • [2024/03/21] from 21:00 to 22:30 (VC “Portale della Didattica”) → Live virtual classroom tutoring about tool installation (with assistant 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

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

Thesis about the use of artificial neural networks for the prediction of the quality of a wireless channel (see the video)
.

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: 2024/04/09 14:27 by zioskenz

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