/canAda-compiler

Primary LanguageJavaMIT LicenseMIT


PCL

canAda compiler
Explore the docs »

pipeline status
View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

PCL is a project developed in Java by a team of engineering students. It is a compiler designed specifically for the "canAda" language, which is based on Ada but with simplified features. This project aims to provide a reliable and efficient tool for compiling and executing canAda programming code.

(back to top)

Built With

  • Java
  • Gradle
  • GitLab CI

(back to top)

Getting Started

To get a local copy up and running follow these simple steps.

Installation

  1. Clone the repo
    git clone https://gitlab.telecomnancy.univ-lorraine.fr/Stanislas.Mezureux/mezureux1u.git
  2. Build all
    cd mezureux1u
    ./gradlew assemble

(back to top)

Usage

Parse a file

USAGE: ./gradlew run --args="[OPTIONS] FILE"
  INPUT           : Input file
  OPTIONS:
     -a (--ast)   : Generate the .png AST (default: false)
     -h (--help)  : Print this message (default: true)
     -p (--parse) : Parse the input file (default: false)

Examples:

./gradlew run --args="-p tests/src/unDebut.ad -a"

Roadmap

  • LEXER

  • PARSER

    • Display AST with Graphviz

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Project Link: https://gitlab.telecomnancy.univ-lorraine.fr/Stanislas.Mezureux/mezureux1u

(back to top)

Acknowledgments

(back to top)