Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/liraymond04/awa5_rs
An AWA5.0 CLI tool written in Rust (btw)
https://github.com/liraymond04/awa5_rs
assembler awa5-0 command-line esolang interpretor jelly-hoshiumi parser phase-connect rust
Last synced: 3 months ago
JSON representation
An AWA5.0 CLI tool written in Rust (btw)
- Host: GitHub
- URL: https://github.com/liraymond04/awa5_rs
- Owner: liraymond04
- License: gpl-3.0
- Created: 2024-07-16T06:37:24.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-15T03:47:23.000Z (5 months ago)
- Last Synced: 2024-09-30T05:45:21.075Z (4 months ago)
- Topics: assembler, awa5-0, command-line, esolang, interpretor, jelly-hoshiumi, parser, phase-connect, rust
- Language: Rust
- Homepage: https://crates.io/crates/awa5_rs
- Size: 895 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AWA5.RS
An [AWA5.0](https://github.com/TempTempai/AWA5.0) CLI tool written in Rust (btw)
Runs as an AWA5.0 interpreter for Awatisms with file extension `.awasm` and Awatalk with file extension `.awa`
Can also run as an assembler for Awatisms and Awatalk to object files, and assembled object files with extension `.o` can be run by the interpreter
## Installation
To install or build from source, you will need to have `rust` or `rustup` installed
```bash
# using Arch Linux's package manager
$ sudo pacman -S rust # or rustup
```If you installed `rustup`, you need to install a toolchain
```bash
$ rustup toolchain install latest
```### With Cargo
You can install from crates.io using cargo
```bash
$ cargo install awa5_rs
```And then run from the command line
```bash
$ awa5_rs --help
```### From source
Or clone this repository and build it from source using cargo
```bash
$ git clone https://github.com/liraymond04/awa5_rs.git
$ cd awa5_rs
$ cargo build
$ ./target/debug/awa5_rs # you can also build and run with `cargo run`, and you can pass flags with `cargo run -- --help` for example
```### Web builds
You need Emscripten or [emsdk](https://github.com/emscripten-core/emsdk) installed
```bash
$ cd examples/wasm/raylib
$ cargo build --target wasm32-unknown-emscripten
$ cd target/wasm32-unknown-emscripten/debug
$ emrun index.html # opens the web build on localhost:6931, which can be opened in a browser
```## Usage
```
Usage: awa5_rs [OPTIONS] [input]Arguments:
[input] File to interpret or convertOptions:
-o, --output Output to file with new format .awasm .awa .o
-s, --string String to interpret or convert
--awasm Parse string as awasm
--awa Parse string as awatalk
-p, --path Search paths separated by ';' for shared libraries
-i, --include Include paths separated by ';' for source files
-h, --help Print help
-V, --version Print version
```