AUTHORS ------- - NAME1 - NAME2 … =============== Description of the project -------------------------- This μ-project is a very simple compiler… =============== Sources ------- Git repository: https://redmine-df.telecom-bretagne.eu/git/PROJECTNAME (obviously, you _will_ use a version control system such as Git, IMT Atlantique provides a project management platform: use it!) Release : tag 1.0 or commit acdeacdacdacdacd =============== How to… ------- …retrieve the sources? git clone https://redmine-df.telecom-bretagne.eu/git/PROJECTNAME …compile? dune … …execute and test? dune utop and then use the libraries (from project root) dune exec expr/main.exe -- expr/basic/tests/an_example.expr dune exec ./pfxVM.exe -- TESTFILE.pfx -a 12 -a 52 =============== Structure of the project ------------------------ The project is organized as following: Explain here the organization of your project, what is the use of each file or group of files, etc. You may also show the file tree as the following example: project ├── README ├── dune-project ├── expr: the expr compiler │ ├── README │ ├── basic │ │ ├── ast.ml │ │ ├── ast.mli │ │ ├── dune │ │ ├── eval.ml │ │ ├── eval.mli │ │ ├── lexer.mll │ │ ├── parser.mly │ │ ├── tests: for tests │ │ │ └── an_example.expr │ │ ├── toPfx.ml <- To edit │ │ └── toPfx.mli │ ├── common │ │ ├── binOp.ml │ │ ├── binOp.mli │ │ └── dune │ ├── compiler.ml: main file for the expr compiler │ ├── dune │ ├── fun: the expr parser for section 7 │ │ ├── ast.ml │ │ ├── ast.mli │ │ ├── lexer.mll │ │ └── parser.mly │ └── main.ml ├── pfx: the pfx VM │ ├── basic │ │ ├── ast.ml <- To edit │ │ ├── ast.mli │ │ ├── dune │ │ ├── eval.ml <- To edit │ │ ├── eval.mli │ │ ├── lexer.mll <- To edit │ │ ├── parser.mly <- To edit │ │ └── tests: for tests │ │ └── ok_prog.pfx │ └── pfxVM.ml: main file for the pfx VM └── utils ├── dune ├── location.ml: module offering a data type for a location in a file └── location.mli =============== Progress -------- - We stopped at question 10.1 (proof of derivation) - There is still a bug in question 8.3 (new version of generate function) - … =============== Know bugs and issues -------------------- - We were not able to manage xxx… - Compiler fails when xxx… - … =============== Helpful resources ----------------- - we used Stack Overflow to solve the problem of xxx : https://stackoverflow/xxxxxxi https://stackoverflow/yyyyyy - someone on GitHub provided an interesting example very similar to the answer of the question x.y : https://github.com/xxxx - … =============== Difficulties ------------ - team programming: having to use a VCS such as git and avoiding conflicts - thinking functional - changing habits by using an unknown language - Not a single difficulty: the project was so easy that my 8-old brother did it completely; the Ocaml language is so nice I enjoyed the project, … - …