https://github.com/cordx56/slip
Small LIsP (toy) language compiler project
https://github.com/cordx56/slip
compiler llvm rust
Last synced: 11 months ago
JSON representation
Small LIsP (toy) language compiler project
- Host: GitHub
- URL: https://github.com/cordx56/slip
- Owner: cordx56
- License: mit
- Created: 2021-05-05T10:31:26.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2021-05-22T23:17:59.000Z (almost 5 years ago)
- Last Synced: 2025-05-03T06:11:42.085Z (11 months ago)
- Topics: compiler, llvm, rust
- Language: Rust
- Homepage: https://slip.cordx.net/
- Size: 63.5 KB
- Stars: 9
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# slip
slip - Small LIsP compiler project
## Run
### Install LLVM 11 using llvmenv
- install cmake, make, ninja, g++/clang++
- `cargo install llvmenv`
- `llvmenv init`
- `llvmenv build-entry 11.0.0`
- `set -x LLVM_SYS_110_PREFIX (llvmenv prefix)`
### Run test code
```bash
$ cargo run test.slip
```
### Print test code LLVM IR
```bash
$ cargo run test.slip --llvmir
```
## Language specification
### BNF
```
::= (* *)*
::= |
::= "(" * (+ )* * ")" | "(" * ")"
::= |
::= |
```