#scripting-language #scripting #language

koto

一种简单、表达性强、可嵌入的编程语言

17 个版本 (破坏性更新)

0.14.1 2024年6月11日
0.13.0 2024年4月5日
0.12.0 2023年10月18日
0.11.0 2022年7月14日
0.5.0 2020年12月17日

#212编程语言

34 每月下载量
2 crates 中使用

MIT 许可证

1MB
19K SLoC

Koto

集合了Koto编程语言的编译器和运行时。

程序可以通过[Koto]结构体进行编译和执行。

示例

use koto::prelude::*;

let mut koto = Koto::default();
match koto.compile("1 + 2") {
    Ok(_) => match koto.run() {
        Ok(result) => match result {
            KValue::Number(n) => println!("{n}"), // 3.0
            other => panic!("Unexpected result type: {}", other.type_as_string()),
        },
        Err(runtime_error) => {
            panic!("Runtime error: {runtime_error}");
        }
    },
    Err(compiler_error) => {
        panic!("Compiler error: {compiler_error}");
    }
}

依赖项

~2–9MB
~75K SLoC