41个版本 (6个重大更新)

0.9.1 2024年7月3日
0.8.25 2024年6月27日
0.7.3 2024年3月22日

402编程语言

Download history 130/week @ 2024-04-27 9/week @ 2024-05-04 13/week @ 2024-05-18 2/week @ 2024-05-25 4/week @ 2024-06-01 236/week @ 2024-06-08 868/week @ 2024-06-15 1437/week @ 2024-06-22 444/week @ 2024-06-29 198/week @ 2024-07-06 2/week @ 2024-07-13 321/week @ 2024-07-27 1/week @ 2024-08-03

每月322 次下载
用于 mers

MIT/Apache

350KB
9K SLoC

mers-lib

mers背后的库。

有了这个,你可以解析、编译、检查和运行mers代码。如果你真的想的话,你还可以添加自己的函数和类型,然后从mers中使用它们。

运行mers

运行mers代码有四个步骤。以下示例将展示如何实现它们,此说明文档仅解释它们的功能和原因。

1. 解析

这一步将源代码(字符串)转换为解析后的mers语句。

在这一步中,会捕获语法错误和未知变量。

2. 编译

这一步将解析后的mers语句转换为编译后的语句。它几乎从不产生错误。

3. 检查

这一步是可选的。如果你解析和编译了源代码,你可以(尝试)运行它。然而,mers假设你运行的mers代码实际上是有效的,所以如果你不检查代码的有效性,mers在运行你的代码时可能会崩溃。

这一步执行所有类型检查并确定代码的输出类型,如果它有效的话。

例如,以下代码是有效的,并且返回类型为 Int/Float

my_condition := true

if my_condition {
  5
} else {
  1.4
}

4. 运行

这一步假设正在运行的代码实际上是有效的,因此它永远不会返回错误。只要第3步的check没有返回错误,就可以安全地假设这一步将返回代码产生的值。我们还可以假设返回值具有由check确定的类型。如果check返回了错误,这可能会崩溃。

依赖关系

~0–9.5MB
~43K SLoC