1个不稳定版本
0.0.1 | 2024年6月11日 |
---|---|
0.0.0 |
|
#14 in #脉冲星
用于 2 crate
150KB
4K SLoC
脉冲星
脉冲星是一种用于构建硬件加速器的高级编程语言。目前,我正在努力实现一个calyx后端。它目前是一个非常原始的语言,因为我还没有确定它应该如何专业化(但所有ADLs在实践中都是DSLs)。
语法非常明显地模仿了Swift,并做了一些修改,它也是一个非常多的WIP。
func increment(x: Int) -> Int {
return x + 1
}
func main() {
let input = [1, 2, 3, 4]
let output = map<1>(increment, input)
}
编译器通过verilator进行端到端测试,verilator是一个硬件仿真工具。
crate
pulsar-lang
: 编译器驱动程序pulsar-utils
: 用于pulsar-*
crate的实用工具pulsar-frontend
: 解析器/AST和类型检查pulsar-ir
: 结构化和非结构化IRpulsar-backend
: 目标发射,例如,Verilog(通过calyx)
依赖关系
~0–9.5MB
~43K SLoC