Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/seatedro/mira
An interpreter written in Go
https://github.com/seatedro/mira
Last synced: about 1 month ago
JSON representation
An interpreter written in Go
- Host: GitHub
- URL: https://github.com/seatedro/mira
- Owner: seatedro
- Created: 2023-05-14T04:36:23.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-10T18:09:45.000Z (7 months ago)
- Last Synced: 2024-11-01T10:24:46.383Z (3 months ago)
- Language: Go
- Size: 69.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Mirame
Mirame is an interpreted programming language written in Go. It is designed to follow the principles outlined in Thorsten Ball's book "Writing an Interpreter in Go" and serves as a practical example of how to write an interpreter from scratch using Go.
Mira is the repository that holds the interpreter code written in Go. [Mirame](https://github.com/seatedro/mirame) Is the repository for the interpreter written in Rust.## Getting Started
### Prerequisites
- Go (version 1.16 or higher)
### Installing
To install Mira, clone this repository into your local machine:
```
git clone [email protected]:seatedro/mira.git
```(If you're not using SSH, use it)
### Running
Once you have cloned the repository, navigate to the root directory of the project and run the following command:
```
go run main.go
```This will start the Mira interpreter and you can begin executing commands.
### Usage
Mira currently supports the following commands:
- `let = ;`: assigns a value to a variable
- `;`: retrieves the value of a variable
- `;`: evaluates an expression#### Example
```
>> let x = 5;
>> let y = 10;
>> x + y;
15
```## Contributing
Contributions to Mira are welcome. If you have any issues or feature requests, please submit them via GitHub issues.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.