An open API service indexing awesome lists of open source software.

https://github.com/armadacore/applit

Learning and experimenting with Rust through practical exercises and the development of a basic custom programming language.
https://github.com/armadacore/applit

compiler learning programming rust-lang

Last synced: 11 months ago
JSON representation

Learning and experimenting with Rust through practical exercises and the development of a basic custom programming language.

Awesome Lists containing this project

README

          

[![codecov](https://codecov.io/github/armadacore/AppLit/branch/develop/graph/badge.svg?token=WGCSG8PN54)](https://codecov.io/github/armadacore/AppLit)

# Rust Exercise Project

Welcome to our Rust exercise project. This project was created to develop a deeper understanding of the Rust programming language. As part of this project, we'll also be developing a custom programming language as an exercise, but this is not the primary goal.

## Project Goals

- **Learning and Understanding Rust:** This project serves as a learning platform to understand the basics as well as advanced concepts of the Rust programming language.
- **Developing a Custom Programming Language as an Exercise:** Developing a custom programming language serves as an additional exercise to apply various Rust features.

## Installation and Execution

To install and run this project locally, please follow these steps:

1. **Install Rust and Cargo:**
Ensure that Rust and Cargo are installed on your system. Instructions for installation can be found on [rustup.rs](https://rustup.rs/).

2. **Clone the Repository:**
Clone this repository to your local system:
```bash
git clone https://github.com/armadacore/AppLit
```

3. **Configure Git Hooks:**
After cloning the repository, navigate to the root directory of the project and execute the following commands to set up Git hooks:
```bash
git config core.hooksPath .hooks
chmod +x ./.hooks/commit-msg
chmod +x ./.hooks/prepare-commit-msg
chmod +x ./.hooks/pre-push
```

4. **Install Dependencies:**
Navigate to the directory of the cloned repository and install the dependencies:
```bash
cd AppLit
cargo build
```

5. **Run the Project:**
Run the project with the following command:
```bash
cargo run
```

## Required Tools

In addition to the above steps, the following tools are required to fully utilize the project:

- **cargo-modules:** A tool to visualize the module structure of your Rust project. Installation instructions can be found on [crates.io](https://crates.io/crates/cargo-modules).
- **Graphviz:** An open-source graph visualization software. Installation instructions can be found on [graphviz.org](https://graphviz.org/download/).

## Shell Scripts

In the `.scripts` folder, you can find shell scripts that automate various tasks. These scripts are optimized for macOS at the current stage. Make sure the scripts have the necessary permissions by running the following command:
```bash
chmod +x .scripts/*.sh
```

## Contribution

Contributions to this project are welcome. If you have ideas or suggestions for improvements, please open an issue or create a pull request.

---

Thank you for taking the time to explore this project. We hope it helps you enhance your Rust skills and that you enjoy developing a custom programming language!