59 次重大发布

0.142.0 2023 年 9 月 28 日
0.140.0 2023 年 9 月 28 日
0.103.0 2023 年 7 月 31 日
0.95.0 2023 年 3 月 12 日
0.1.0 2018 年 1 月 29 日

#216编程语言

Download history 329/week @ 2024-03-29 82/week @ 2024-04-05

496 每月下载量
用于 flowide

MIT 许可证

450KB
10K SLoC

flowc

flowc 是用于流程和流程库的 "编译器和链接器",尽管它与你可能熟悉的编译器或链接器不太相似。

它是整体 flow 项目的组成部分 (README.md)。

它加载流程定义文件,通过读取引用的流程/函数和库引用来构建流程层次结构,并在内存中构建流程。

然后它通过层次结构连接所有函数,通过数据流连接所有函数,删除大部分流程结构,留下一个 "函数网络",然后对其进行优化(删除未使用的函数和连接)。

它检查类型是否匹配和存在所需连接。

它还检查一些非法或可能在运行时证明有问题的案例(特定类型的 "循环" 或对连接的竞争)

最后,它生成一个描述流程的清单,该清单可以被 flowr 执行。

然后它可能(根据使用的命令行选项)调用 flowr(使用 cargo 确保它是最新的并已构建)。

它被构建为一个库,其周围有一个薄的 CLI 包装器,该包装器提供命令行参数,然后使用该库编译和可选地运行编译后的流程。

flowrclib

这个库包含 flowc 的大部分编译和链接逻辑。

功能

这些是 flowc crate 的条件编译功能

  • 默认 - 默认启用 "调试器" 功能
  • 调试器 - 添加调试器的功能

依赖项

~21–33MB
~561K SLoC