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 在 编程语言 中
496 每月下载量
用于 flowide
450KB
10K SLoC
flowc
flowc
是用于流程和流程库的 "编译器和链接器",尽管它与你可能熟悉的编译器或链接器不太相似。
它是整体 flow
项目的组成部分 (README.md)。
它加载流程定义文件,通过读取引用的流程/函数和库引用来构建流程层次结构,并在内存中构建流程。
然后它通过层次结构连接所有函数,通过数据流连接所有函数,删除大部分流程结构,留下一个 "函数网络",然后对其进行优化(删除未使用的函数和连接)。
它检查类型是否匹配和存在所需连接。
它还检查一些非法或可能在运行时证明有问题的案例(特定类型的 "循环" 或对连接的竞争)
最后,它生成一个描述流程的清单,该清单可以被 flowr
执行。
然后它可能(根据使用的命令行选项)调用 flowr
(使用 cargo 确保它是最新的并已构建)。
它被构建为一个库,其周围有一个薄的 CLI 包装器,该包装器提供命令行参数,然后使用该库编译和可选地运行编译后的流程。
flowrclib
这个库包含 flowc
的大部分编译和链接逻辑。
功能
这些是 flowc
crate 的条件编译功能
- 默认 - 默认启用 "调试器" 功能
- 调试器 - 添加调试器的功能
依赖项
~21–33MB
~561K SLoC