8 个版本 (4 个稳定版)
2.0.0 | 2019年2月5日 |
---|---|
1.1.1 | 2017年4月27日 |
1.1.0 | 2017年3月20日 |
1.0.0 | 2017年2月7日 |
0.1.0 | 2016年12月1日 |
#2029 在 解析实现 中
17KB
402 行
brainfuck.rs
使用 Rust 编写并使用 nom 实现的 Brainfuck 解析器和解释器
解释器示例
cargo run --bin bf examples/bottles.bf
解析器示例
extern crate brainfuck;
use brainfuck::context::Context;
use brainfuck::parser;
fn main() {
let hello_world = include_bytes!("hello_world.bf");
let mut ctx = Context::new();
let block = parser::parse(hello_world).expect("Failed parsing input file");
ctx.run(&block);
}
您可以通过运行 cargo run --example hello_world
来尝试这个
依赖项
~1.5MB
~24K SLoC