Code Monkey home page Code Monkey logo

pfx's Introduction

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, …
- …

pfx's People

Contributors

badr4y avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.