教程:calc

本教程会通过一个端到端示例来介绍如何使用 Salsa。 它不假设你事先了解 Salsa, 不过先读一遍概述会更容易熟悉基本概念。

我们的目标是为一门名为 calc 的简单语言定义一个编译器/解释器。 calc 编译器接收如下程序,然后对其进行解析并执行:

fn area_rectangle(w, h) = w * h
fn area_circle(r) = 3.14 * r * r
print area_rectangle(3, 4)
print area_circle(1)
print 11 * 2

执行时,这个程序会输出 123.1422

如果程序里包含错误(例如引用了未定义的函数), 它也会把这些错误打印出来。 当然,它还是响应式的, 所以对输入做小修改时,不需要重新编译 (或者说,不一定需要重新执行)整个程序。