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

https://github.com/neverrare/brain_flak_macro

Brain Flak macro in rust
https://github.com/neverrare/brain_flak_macro

brain-flak macro rust

Last synced: about 1 year ago
JSON representation

Brain Flak macro in rust

Awesome Lists containing this project

README

          

# Brain Flak Macro

Write [Brain-Flak] code inside rust. You can pass a vector for input. The `brain_flak` macro will expand to stack manipulation.

```rust
use brain_flak_macro::brain_flak;

let mut vec: Vec = vec![20, 5];
brain_flak! { &mut vec =>
// multiplication
([({}<([({}(<()>))<>](<()>))<>>)<>]){({}[()]<(({})<({}{})>)>)<>}{}{}<>{}{}{}<>
}
assert_eq!(vec![100], vec);
```

## Why

I was about to make [brainfuck macro] but it already exist. A random guy from some random discord server suggested Brain-Flak instead. It's choice of using balanced brackets make it easy enough for just using `macro_rules` (No).

[Brain-Flak]: https://esolangs.org/wiki/Brain-Flak
[brainfuck macro]: https://crates.io/crates/brainfuck_macros