This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
compilers:assignments20202021 [2021/04/06 16:57] zioskenz |
compilers:assignments20202021 [2021/04/07 22:48] (current) zioskenz |
||
---|---|---|---|
Line 12: | Line 12: | ||
===== Assignment 1 ===== | ===== Assignment 1 ===== | ||
+ | This assignment is composed of two parts: | ||
+ | - Study of the languages used by the security protocol verifier Proverif (https:// | ||
+ | - Development of a Java library that can be used to parse part of the Proverif input and output languages. The library must provide access to the syntax tree and symbol table of the recognized language structures. A set of junit tests must also be produced to test the produced library. | ||
+ | |||
+ | ===== Assignment 2 ===== | ||
This assignment is composed of two parts: | This assignment is composed of two parts: | ||
- Perform a research on the main techniques used for Natural Language Processing (NLP) | - Perform a research on the main techniques used for Natural Language Processing (NLP) | ||
- Use a tool (for instance NLTL [[https:// | - Use a tool (for instance NLTL [[https:// | ||
- | + | ===== Assignment | |
- | ===== Assignment | + | |
This assignment is composed of two parts: | This assignment is composed of two parts: | ||
- Study of the //Lua// programming language (http:// | - Study of the //Lua// programming language (http:// | ||
- Writing of a compiler that recognizes part of the //Lua// language. The compiler has to make a translation in the LLVM syntax (https:// | - Writing of a compiler that recognizes part of the //Lua// language. The compiler has to make a translation in the LLVM syntax (https:// | ||
- | ===== Assignment | + | ===== Assignment |
This assignment is composed of two parts: | This assignment is composed of two parts: | ||
- Study of the //Haskell// programming language (https:// | - Study of the //Haskell// programming language (https:// | ||
- Writing of a compiler that recognizes part of the //Haskell// language. The compiler has to make a translation in the LLVM syntax (https:// | - Writing of a compiler that recognizes part of the //Haskell// language. The compiler has to make a translation in the LLVM syntax (https:// | ||
- | ===== Assignment | + | ===== Assignment |
This assignment is composed of two parts: | This assignment is composed of two parts: | ||
- Study of the //Lisp// programming language (https:// | - Study of the //Lisp// programming language (https:// | ||
- Writing of a compiler that recognizes part of the //Lisp// language. The compiler has to make a translation in the LLVM syntax (https:// | - Writing of a compiler that recognizes part of the //Lisp// language. The compiler has to make a translation in the LLVM syntax (https:// |