1 个不稳定版本
0.1.0 | 2022年6月27日 |
---|
#26 在 #interpreters
13KB
263 行
esobox
Rust (重)实现各种 esolang
lib.rs
:
Rust (重)实现各种 esolang
通过统一的接口包含各种 esolang 的实现。由于许多语言有 I/O 作用的命令,每个实现除了源代码外,还以输入输出流为参数
pub fn run<I: BufRead, O: Write>(source: &str, input: &mut I, output: &mut O) -> Result<(), Error>
此 run
函数在成功运行时返回 Ok(())
,如果程序由于某种错误而终止,则返回 Err(...)
。Error 枚举对每种语言是唯一的,包含所有可能的错误情况。请参阅相应的文档以获取详细信息。
每种语言的实现都旨在“比简单的实现更快”,这通常通过将“半编译”为字节码来实现。
依赖项
~1.7–2.3MB
~41K SLoC