Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/adrianmosnegutu/toy-language-interpreter
A toy language interpreter made in Java, together with a user-friendly interface to debug and see how simple programs work.
https://github.com/adrianmosnegutu/toy-language-interpreter
interpreter java javafx javafx-application oop oops-in-java programming-language toy-language
Last synced: 17 days ago
JSON representation
A toy language interpreter made in Java, together with a user-friendly interface to debug and see how simple programs work.
- Host: GitHub
- URL: https://github.com/adrianmosnegutu/toy-language-interpreter
- Owner: AdrianMosnegutu
- License: mit
- Created: 2025-01-11T21:13:57.000Z (25 days ago)
- Default Branch: master
- Last Pushed: 2025-01-18T23:47:32.000Z (18 days ago)
- Last Synced: 2025-01-19T00:22:15.871Z (18 days ago)
- Topics: interpreter, java, javafx, javafx-application, oop, oops-in-java, programming-language, toy-language
- Language: Java
- Homepage:
- Size: 12.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Toy Language Interpreter
A toy language interpreter made in Java, together with a user-friendly interface to debug and see how simple programs work.
## Table of Contents
- [Introduction](#introduction)
- [Features](#features)
- [Installation](#installation)
- [Usage](#usage)
- [Screenshots](#screenshots)
- [Contributing](#contributing)
- [License](#license)## Introduction
The Toy Language Interpreter is a Java-based project that interprets a simple toy language. It provides an intuitive graphical user interface (GUI) to help users debug and visualize the execution of their programs. This project is perfect for educational purposes and for those who want to understand the basics of language interpretation and debugging.
## Features
- **Java-based Interpreter**: Implements a simple toy language interpreter in Java.
- **User-friendly Interface**: Interactive GUI built using JavaFX to debug and visualize program execution.
- **Real-time Debugging**: Step through the code and observe variable states and control flow.
- **Sample Programs**: Includes example programs to demonstrate the interpreter's capabilities.## Installation
To run the Toy Language Interpreter, you need to have Java and Gradle installed on your system.
1. **Clone the repository**:
```bash
git clone https://github.com/AdrianMosnegutu/Toy-Language-Interpreter.git
cd Toy-Language-Interpreter
```2. **Build the project**:
```bash
./gradlew build
```3. **Run the application**:
```bash
./gradlew run
```## Usage
1. **Launch the application**:
After building the project, run the application using the command mentioned above.2. **Load a sample program**:
Use the GUI to load one of the sample programs provided in the repository.3. **Step through the code**:
Use the debugging controls in the GUI to step through the code and observe the interpreter's execution.## Screenshots
### Main Interface
![Main Interface](screenshots/screenshot-1.png)
### Debugging Example
![Debugging Example](screenshots/screenshot-2.png)
## Contributing
Contributions are welcome! If you have suggestions for improvements or want to add new features, feel free to fork the repository and create a pull request.
1. **Fork the repository**:
Click on the "Fork" button at the top right corner of this page.2. **Create a new branch**:
```bash
git checkout -b my-feature-branch
```3. **Make your changes**:
Implement your feature or fix the bug.4. **Commit your changes**:
```bash
git commit -m "Add my new feature"
```5. **Push to your branch**:
```bash
git push origin my-feature-branch
```6. **Create a pull request**:
Click on the "New Pull Request" button on the repository page.## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.