# VerySH 完整参考：算法评测与 AI 编写手册

版本：0.7.21-oj.1 · Ubuntu x86_64 · 生成日期：2026-10-26

本文件是完整、可离线使用的 Markdown，不依赖网页分页、外部图片或额外文档文件。网页与本文件从同一组库内 Document 声明生成。所有接口区分大小写，参数含义、类型、必填项、默认值及返回值以各条目为准。

## 先阅读：给 AI 工具的约定

你正在为 VerySH 0.7.20-oj.1 的 Ubuntu 算法评测站编写程序，请遵守：
1. 生成 UTF-8 单文件，每个程序以独占一行的 Prefix 开始，正文从上到下执行。
2. 始终采用前缀表达式。例如 + A B；不要写 A + B、obj.field、Net.Connect 或 Import ... As ...。
3. 圆括号只表示不定长度列表：Call 的实参、Def 的参数/正文、If/While/For 的正文。不要用圆括号做算术分组，不在列表间加逗号，不使用 EndDef、缩进块或旧连写符代替正文列表。
4. 用 Var 类型 名称 初值 声明变量，用 Assign 名称 值 更新变量。名称区分大小写。
5. 库函数写 Call 名称 ( 参数 ... )，即使无参数也写 ()。忽略返回值时写 Do 表达式。ListGet/ListSet/ListPush/MapGet 等语言内置表达式直接写，不加 Call。
6. 在使用输入输出前写 Do Call Load ( & "io" )。整数输入使用 Call ReadInt ()，读到 EOF 推荐 While Call TryReadInt ( 变量 ) ( ... )。
7. & "文本" 是字符串常量；@ 名称 读取字符串变量；$ 表达式 转成字符串。EchoLine 需要 String，所以输出数字写 Do Call EchoLine ( $ 结果 )。不要把 & 固定写到变量前。
8. 函数写 Def 返回类型 名称 ( 类型 形参 ... ) ( 正文 ... Return 结果 )。固定签名没有可省略的默认形参。
9. For 使用 For Int I From 起点 To 终点 ( 正文 )，终点不包含在内，默认 Step 1；本站当前 For 语法使用 Int。
10. List 索引从 0 开始；Map 使用 String 键和 Pair。Struct 及内部 Struct 按值复制，内部 List/Map/Class 字段仍共享引用。
11. 本站仅提供 io、math 及内置函数。不要编造 ReadLong、abs、sort、Gcd 等库函数；需要时根据本参考已有接口实现自己的函数。Int 为有符号 32 位，Long 为有符号 64 位；需要小数运算时使用 Double 或带小数的字面量。
12. 算法提交优先使用标准输入输出，正常输出只包含题目答案，不输出提示、调试日志或计时。不要依赖网络、环境变量、文件路径、多文件上传、外部模块、窗口、Python 包、交互按键或动态 DLL/EXE 导出。
13. 参考中标为“语言级/受限”或“桌面/交互”的条目不保证在本站可用；不要将它们当作已安装的 OJ 接口。
14. 若用户要求可提交的答案，只给完整 VerySH 程序；不要将代码转写成 Python、C++ 或伪代码。

注意：这是完整语言参考，并非承诺所有开发功能均能在 OJ 中使用。标为“语言级/受限”及“桌面/交互”的条目不应当作本站已提供的接口。源文档中关于 Windows IDE、积木或其他平台的说明属于语言项目背景，评测站只提供文本提交、io/math 与标准输入输出。

## 目录

- 开始使用
  - [五分钟开始：程序、输入与输出](#quick-cced28c6dc3f)
  - [本站运行环境与评测结果](#quick-10e86c6514d4)
  - [给 AI 工具的 VerySH 编写约定](#quick-32e83e92d45d)
- 完整算法示例
  - [A+B：读入与输出](#examples-7e9e5ac30f22)
  - [EOF：读到输入结束](#examples-22988607ff89)
  - [函数与循环：最大公约数](#examples-a4047ae365ca)
  - [List 与 ForEach：求最大值](#examples-8a64ff09886c)
  - [Format：变量格式化输出](#examples-e904c9ccfa42)
  - [Struct 值复制与内部 List 引用共享](#examples-6f5a6034e770)
  - [Try / Catch：捕获错误后继续](#examples-be4bd5677277)
- 基础语法与类型
  - [Prefix](#syntax-74feac5eb8d9)
  - [list](#syntax-a330395cc0a5)
  - [Var](#syntax-60529803e0f9)
  - [Assign](#syntax-8ece895c9b32)
  - [Def](#syntax-fcc0fc8f7736)
  - [Call](#syntax-d6e645b7d2b2)
  - [Do](#syntax-30094e0bec00)
  - [Return](#syntax-6b0143d03864)
  - [If](#syntax-1e3abf61a37e)
  - [While](#syntax-f1b05a744bc2)
  - [For](#syntax-ca15ebc05a3c)
  - [ForEach](#syntax-560c9e47b124)
  - [Break](#syntax-f71081fb0af4)
  - [Gap](#syntax-cb129306bc6f)
  - [Nop](#syntax-e2fc46feeb42)
  - [Exit](#syntax-d17d84a60499)
  - [Scope](#syntax-b073f6c68ef8)
  - [Import](#syntax-2cff9baabf56)
  - [From](#syntax-218197693424)
  - [Export](#syntax-3664895579f0)
  - [Function](#syntax-c803710302d5)
  - [Lambda](#syntax-862a3f0fc3ca)
  - [Value](#syntax-8e37953d23da)
  - [Struct](#syntax-5e95797a7202)
  - [Class](#syntax-4f3a9bd00397)
  - [Field](#syntax-f45fc1dfdc96)
  - [Init](#syntax-34b291c67838)
  - [New](#syntax-18fdd549b2ed)
  - [Member](#syntax-7c968fb71f50)
  - [Self](#syntax-85bc0f95858d)
  - [Public](#syntax-591935b15b1c)
  - [Private](#syntax-c63eb6720c6e)
  - [Protected](#syntax-b0ed26337336)
  - [Extends](#syntax-12896f29629c)
  - [Override](#syntax-43bc0f5fc035)
  - [Base](#syntax-7b47361aad19)
  - [Null](#syntax-fa1d2db62d4d)
  - [IsNull](#syntax-945b6d060bfe)
  - [IsA](#syntax-91da0e645141)
  - [Try](#syntax-85d6c0718cfe)
  - [Throw](#syntax-c78054582e89)
  - [Catch](#syntax-5b4cd3a7f069)
  - [Error](#syntax-54a0e8c17ebb)
  - [List](#syntax-6f202f54a7b2)
  - [Map](#syntax-be176b0015c4)
  - [Pair](#syntax-989da04b0aaa)
  - [ListGet](#syntax-5969f7079887)
  - [ListSet](#syntax-7add41266d6a)
  - [ListPush](#syntax-18a519304a16)
  - [ListPop](#syntax-f22338d20319)
  - [ListSize](#syntax-474e3984631e)
  - [MapGet](#syntax-1aaf97e67e56)
  - [MapSet](#syntax-a78c6ef9e85b)
  - [MapHas](#syntax-e2892aaa9dfc)
  - [MapRemove](#syntax-deefffe388b0)
  - [MapSize](#syntax-1757d3c35708)
  - [Index](#syntax-39c3be1198a2)
  - [+](#syntax-a318c24216de)
  - [-](#syntax-3973e022e932)
  - [*](#syntax-684888c0ebb1)
  - [/](#syntax-8a5edab28263)
  - [%](#syntax-bbf3f11cb5b4)
  - [&](#syntax-951dcee3a7a4)
  - [|](#syntax-cbe5cfdf7c21)
  - [^](#syntax-74cd9ef9c7e1)
  - [==](#syntax-f16474a9900a)
  - [!=](#syntax-c10987bd7cf8)
  - [>](#syntax-62b67e1f685b)
  - [>=](#syntax-92a00d7d91da)
  - [<](#syntax-dabd3aff769f)
  - [<=](#syntax-b60080dc8b89)
  - [&&](#syntax-73e7b6f86214)
  - [||](#syntax-565d240f5343)
  - [!](#syntax-bb7208bc9b5d)
  - [@](#syntax-c3641f8544d7)
  - [$](#syntax-09fc96082d34)
  - [string](#syntax-473287f8298d)
  - [Int](#syntax-0b5f608070c6)
  - [Long](#syntax-d1d87c4717d5)
  - [Double](#syntax-529441523bec)
  - [Bool](#syntax-49f411f0a1a7)
  - [Char](#syntax-cbaeb39b137e)
  - [String](#syntax-b2ef230e7f4f)
  - [Any](#syntax-2b505597daa7)
  - [True](#syntax-3cbc87c7681f)
  - [False](#syntax-60a33e6cf515)
  - [Random](#syntax-67bc484430fe)
  - [Code](#syntax-340f463033e0)
  - [ParseCode](#syntax-0e29c966e555)
  - [Compile](#syntax-a11360825850)
  - [Output](#syntax-b2439bcb8dee)
  - [Target](#syntax-978354db0c00)
  - [Entry](#syntax-2649e082d9a2)
  - [Capture](#syntax-1900b478a586)
  - [LoadArtifact](#syntax-3a71ac07ed51)
  - [Artifact](#syntax-e06171a1c467)
  - [Module](#syntax-f148224ae44f)
  - [Func](#syntax-ebf8a7235982)
  - [Native](#syntax-d509e4938852)
  - [PythonObject](#syntax-7f0d68e02e84)
  - [NativeObject](#syntax-6b0ecd00de78)
  - [Document](#syntax-d6bd8c0aeee8)
  - [Library](#syntax-dc20b3d5d2cd)
  - [comments](#syntax-2b4244fb2663)
- 内置函数
  - [ArgCount](#runtime-dc1e8a3eb59e)
  - [Arg](#runtime-3df61483d1c4)
  - [TextEqual](#runtime-f1a41b906026)
  - [TextLength](#runtime-5297477c4942)
  - [Field](#runtime-f45fc1dfdc96)
  - [IntField](#runtime-4263e467568f)
  - [TryIntField](#runtime-01eeaba3278c)
  - [TickMs](#runtime-e0af14b7ee0f)
  - [Require](#runtime-c93d34f3176d)
  - [Help](#runtime-b79cac926e0b)
  - [Doc](#runtime-49f4e57c2625)
  - [RegisterDoc](#runtime-47ba22bf4f18)
  - [Load](#runtime-8a6bdb6b18da)
  - [RegexCount](#runtime-02eff08f7634)
  - [RegexReplace](#runtime-aa6cbba3cd61)
  - [RegexVersion](#runtime-06d7161d02be)
  - [RegexJITSupported](#runtime-2232a3d0a4dd)
- io 输入输出库
  - [io 库说明](#io-dc20b3d5d2cd)
  - [Echo](#io-8335e4c92c40)
  - [Text](#io-71988c4d8e08)
  - [Speak](#io-cb09d412cce2)
  - [EchoLine](#io-f8647cbacc64)
  - [Flush](#io-1278166f1434)
  - [ReadLine](#io-0c9be4f52a7f)
  - [ReadToken](#io-0027ef423bb5)
  - [ReadInt](#io-1cb98ac3b46a)
  - [ReadDouble](#io-248afe5202bb)
  - [ReadBool](#io-705c14dceb20)
  - [ReadChar](#io-6bf283af6818)
  - [TryReadLine](#io-9c6e14ba2e6d)
  - [TryReadInt](#io-f08c0b761334)
  - [TryReadDouble](#io-58b15cbdd015)
  - [TryReadBool](#io-fa457e4f89b4)
  - [TryReadChar](#io-5c8a2c38b9d6)
  - [InputEOF](#io-c6a9e39b8f20)
  - [ClearInput](#io-39ad93eefb09)
  - [DiscardLine](#io-f2190310efd3)
  - [GetKey](#io-8abe8c703600)
  - [KeyHit](#io-cd399e789fc7)
  - [Format](#io-2f343666aaa8)
  - [FormatMap](#io-697d8634c7ce)
- math 数学库
  - [math 库说明](#math-dc20b3d5d2cd)
  - [sin](#math-cccc68c7928e)
  - [cos](#math-9be28bbe03fa)
  - [tan](#math-0e5123df1126)
  - [Asin](#math-dd833299f6f3)
  - [Acos](#math-5a7c226d2367)
  - [Atan](#math-d96dee8cd633)
  - [Max](#math-a1a5936d3b0f)
  - [Min](#math-dea79332147f)
  - [sqrt](#math-7e2131ab7c50)

## 开始使用

<a id="quick-cced28c6dc3f"></a>

### 五分钟开始：程序、输入与输出

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

每个文件只有一个 `Prefix`，独占一行。正文语句按源码顺序执行。括号是列表，不是算术分组。代码名称区分大小写。

### 一个可直接提交的程序
```verysh
Prefix
Do Call Load ( & "io" )
Var Int A Call ReadInt ()
Var Int B Call ReadInt ()
Do Call EchoLine ( $ + A B )
```
输入 `2 3`，输出 `5`。也可以到“VerySH 入门练习”提交 90001 题。

### 常见写法
| 目的 | VerySH 写法 |
| --- | --- |
| 计算 A+B | `+ A B` |
| 更新变量 | `Assign A + A 1` |
| 字符串常量 | `& "hello"` |
| 输出数字 | `Do Call EchoLine ( $ A )` |
| 输出字符串变量 | `Do Call EchoLine ( @ Text )` |
| 定义函数 | `Def Int Add ( Int A Int B ) ( Return + A B )` |
| 调用函数 | `Call Add ( 2 3 )` |
| 空参数列表/空分支 | `()` |

需要小数结果时使用 `Double` 或带小数的字面量。For 的终点不包含在内，当前语法固定为 `For Int`。不要写 `A+B`、`EchoLine(A)`、`obj.field` 或用括号替代前缀运算树。


<a id="quick-10e86c6514d4"></a>

### 本站运行环境与评测结果

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

本站版本来自同一套 VerySH C++ IR 运行时和 Rust 前端，Ubuntu x86_64；不是第二套简化解释器。

### 可用范围
- 提交为 UTF-8 单文件，仅接受 VerySH。
- 可加载 `io` 和 `math`，内置函数无需额外安装。
- 支持函数、闭包、List/Map、Struct/Class、异常等现有语言语义。
- Struct 按值复制；内部 List/Map/Class 字段共享引用，见完整示例。
- 不提供外部模块、多文件上传、Python 包、窗口、交互终端、网络或宿主文件访问。
- 每组 CPU 为 4–20 秒，地址空间上限 768 MiB，输出文件上限 2 MiB；具体题目还有总预算。
- 交互题、其他语言专用函数模板和外部特判器尚未开放。

### 结果含义
| 结果 | 含义 / 常见处理 |
| --- | --- |
| Accepted | 通过本地可用测试。 |
| Wrong Answer | 输出与题目要求不符；不要输出提示或调试信息。 |
| Compile Error | 语法检查失败；先确认 Prefix、括号列表和大小写。 |
| Runtime Error | 除零、越界、输入格式错误、函数/库名错误等；查看错误行。 |
| Time Limit Exceeded | 超过 CPU、墙钟或整次预算；检查死循环与复杂度。 |
| Memory Limit Exceeded | 内存分配失败；减少对象、容器和临时字符串。 |
| Output Limit Exceeded | 输出超限；检查死循环和误输出。 |
| Judge Error | 隔离评测服务暂不可用；不能据此认定代码有错。 |

读到 EOF 应优先使用 `TryReadInt` 等接口的 Bool 返回值；不要在没有新输入时重复使用旧变量。输入需与函数类型匹配。函数表中没有 ReadLong 等名字时，不要猜测调用。


<a id="quick-32e83e92d45d"></a>

### 给 AI 工具的 VerySH 编写约定

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

将下载的完整 `.md` 与题目一起交给 AI，优先依据可用接口和完整示例生成代码。可直接复制以下约定：

```text
你正在为 VerySH 0.7.20-oj.1 的 Ubuntu 算法评测站编写程序，请遵守：
1. 生成 UTF-8 单文件，每个程序以独占一行的 Prefix 开始，正文从上到下执行。
2. 始终采用前缀表达式。例如 + A B；不要写 A + B、obj.field、Net.Connect 或 Import ... As ...。
3. 圆括号只表示不定长度列表：Call 的实参、Def 的参数/正文、If/While/For 的正文。不要用圆括号做算术分组，不在列表间加逗号，不使用 EndDef、缩进块或旧连写符代替正文列表。
4. 用 Var 类型 名称 初值 声明变量，用 Assign 名称 值 更新变量。名称区分大小写。
5. 库函数写 Call 名称 ( 参数 ... )，即使无参数也写 ()。忽略返回值时写 Do 表达式。ListGet/ListSet/ListPush/MapGet 等语言内置表达式直接写，不加 Call。
6. 在使用输入输出前写 Do Call Load ( & "io" )。整数输入使用 Call ReadInt ()，读到 EOF 推荐 While Call TryReadInt ( 变量 ) ( ... )。
7. & "文本" 是字符串常量；@ 名称 读取字符串变量；$ 表达式 转成字符串。EchoLine 需要 String，所以输出数字写 Do Call EchoLine ( $ 结果 )。不要把 & 固定写到变量前。
8. 函数写 Def 返回类型 名称 ( 类型 形参 ... ) ( 正文 ... Return 结果 )。固定签名没有可省略的默认形参。
9. For 使用 For Int I From 起点 To 终点 ( 正文 )，终点不包含在内，默认 Step 1；本站当前 For 语法使用 Int。
10. List 索引从 0 开始；Map 使用 String 键和 Pair。Struct 及内部 Struct 按值复制，内部 List/Map/Class 字段仍共享引用。
11. 本站仅提供 io、math 及内置函数。不要编造 ReadLong、abs、sort、Gcd 等库函数；需要时根据本参考已有接口实现自己的函数。Int 为有符号 32 位，Long 为有符号 64 位；需要小数运算时使用 Double 或带小数的字面量。
12. 算法提交优先使用标准输入输出，正常输出只包含题目答案，不输出提示、调试日志或计时。不要依赖网络、环境变量、文件路径、多文件上传、外部模块、窗口、Python 包、交互按键或动态 DLL/EXE 导出。
13. 参考中标为“语言级/受限”或“桌面/交互”的条目不保证在本站可用；不要将它们当作已安装的 OJ 接口。
14. 若用户要求可提交的答案，只给完整 VerySH 程序；不要将代码转写成 Python、C++ 或伪代码。
```


## 完整算法示例

<a id="examples-7e9e5ac30f22"></a>

### A+B：读入与输出

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Var Int A Call ReadInt ()
Var Int B Call ReadInt ()
Do Call EchoLine ( $ + A B )
```

### 输入
```text
2 3
```

### 输出
```text
5
```


<a id="examples-22988607ff89"></a>

### EOF：读到输入结束

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Var Int Sum 0
Var Int Value 0
While Call TryReadInt ( Value ) (
    Assign Sum + Sum Value
)
Do Call EchoLine ( $ Sum )
```

### 输入
```text
1 2 3
```

### 输出
```text
6
```


<a id="examples-a4047ae365ca"></a>

### 函数与循环：最大公约数

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Def Int Gcd ( Int A Int B ) (
    While != B 0 (
        Var Int R % A B
        Assign A B
        Assign B R
    )
    Return A
)
Var Int X Call ReadInt ()
Var Int Y Call ReadInt ()
Do Call EchoLine ( $ Call Gcd ( X Y ) )
```

### 输入
```text
48 18
```

### 输出
```text
6
```


<a id="examples-8a64ff09886c"></a>

### List 与 ForEach：求最大值

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Var List Data List ( 3 1 9 2 )
Var Int Answer ListGet Data 0
ForEach ( Index Value ) Data (
    If > Value Answer ( Assign Answer Value ) ()
)
Do Call EchoLine ( $ Answer )
```

### 输入
```text
```

### 输出
```text
9
```

本示例不需要输入。


<a id="examples-e904c9ccfa42"></a>

### Format：变量格式化输出

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Var String Name & "Ada"
Var Int Count 7
Var Double Score 93.456
Do Call EchoLine (
    Call Format ( & "{}: {:04d}, {:.2f}" List ( Name Count Score ) )
)
```

### 输入
```text
```

### 输出
```text
Ada: 0007, 93.46
```

本示例不需要输入。


<a id="examples-6f5a6034e770"></a>

### Struct 值复制与内部 List 引用共享

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Struct Packet ( Field Int X Field List Items )
Var Packet A New Packet ( 1 List ( 2 ) )
Var Packet B A
Assign Member X B 9
Do ListPush Member Items B 3
Do Call EchoLine ( $ Member X A )
Do Call EchoLine ( $ ListSize Member Items A )
```

### 输入
```text
```

### 输出
```text
1
2
```

本示例不需要输入。


<a id="examples-be4bd5677277"></a>

### Try / Catch：捕获错误后继续

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

以下是独立、完整的 VerySH 程序。

```verysh
Prefix
Do Call Load ( & "io" )
Try (
    Do / 1 0
) Catch Error E (
    Do Call EchoLine ( & "caught" )
)
Do Call EchoLine ( & "done" )
```

### 输入
```text
```

### 输出
```text
caught
done
```

本示例不需要输入。


## 基础语法与类型

<a id="syntax-74feac5eb8d9"></a>

### Prefix

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：标记当前文件使用 VerySh 前缀语法。

参数：
没有操作数。

返回值/执行效果：文件头，不产生值；正文语句按源码顺序执行。

每个文件只有一个 Prefix，独占一行。积木根位置不决定顺序，其内部排列才决定顺序。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( & "第一条" )
Do Call EchoLine ( & "第二条" )
```

<a id="syntax-a330395cc0a5"></a>

### list

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：圆括号只表示不定长度列表，不做算术分组。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| 列表项 | 由父节点决定 | 否 | 允许空列表 () | Call 中是实参，Def 的参数列表是类型和名称对，正文列表是语句。 |


返回值/执行效果：列表自身不是独立的通用值；需要容器值时写 List ( ... )。

调用的实参数量仍受函数签名约束；可变的是列表长度，不代表任意函数都接受任意参数。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Add ( Int A Int B ) ( Return + A B )
Var Int Total Call Add ( 2 3 )
Do Call EchoLine ( $ Total )
```

<a id="syntax-60529803e0f9"></a>

### Var

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：声明一个有类型的局部或模块变量。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Type | 类型名称 | 是 | 无，必须显式提供 | 如 Int、Long、String、Map 或自定义类。 |
| Name | 标识符 | 是 | 无，必须显式提供 | 新变量名，在当前作用域可见。 |
| Initial | 表达式 | 是 | 无，必须显式提供 | 初值；普通 Var 声明不可省略。 |


返回值/执行效果：声明语句，不产生可用返回值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Count 2
Var String Name & "VerySh"
Do Call EchoLine ( + @ Name $ Count )
```

<a id="syntax-8ece895c9b32"></a>

### Assign

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：为已有变量、数组元素或可写字段赋值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Target | 可赋值表达式 | 是 | 无，必须显式提供 | 已有变量名、Index 或 Member 字段。 |
| Value | 表达式 | 是 | 无，必须显式提供 | 要写入的新值，类型须与目标兼容。 |


返回值/执行效果：赋值语句，修改目标。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Count 1
Assign Count + Count 2
Do Call EchoLine ( $ Count )
```

<a id="syntax-fcc0fc8f7736"></a>

### Def

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：定义可递归调用的具名函数。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Result | 类型 | 是 | 无，必须显式提供 | 返回类型；需要返回相应类型的值。 |
| Name | 标识符 | 是 | 无，必须显式提供 | 函数名称；REPL 中重定义会更新稳定符号槽。 |
| Parameters | ( 类型 名称 ... ) | 是 | 无，必须显式提供 | 每个参数类型和名称成对，零参数也写 ()。 |
| Body | ( 语句 ... ) | 是 | 无，必须显式提供 | 函数正文，Return 指定结果。 |


返回值/执行效果：定义语句；Function Name 得到 Func。

没有默认形参；所有已声明形参在调用时都必须传入。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Add ( Int Left Int Right ) ( Return + Left Right )
Do Call EchoLine ( $ Call Add ( 2 3 ) )
```

<a id="syntax-d6e645b7d2b2"></a>

### Call

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：调用具名函数、模块函数、方法或函数值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Selector | 函数选择器 | 是 | 无，必须显式提供 | 函数名、From 模块 函数、Member 方法 对象，或 Value 函数值。 |
| Arguments | ( 表达式 ... ) | 是 | 无，必须显式提供 | 按形参顺序传实参，零参数也写 ()。 |


返回值/执行效果：返回被调用函数声明的类型；错误沿调用栈传播。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Add ( Int A Int B ) ( Return + A B )
Var Int Sum Call Add ( 2 3 )
Do Call EchoLine ( $ Sum )
```

<a id="syntax-30094e0bec00"></a>

### Do

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：执行一个表达式并丢弃其返回值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Expression | 表达式 | 是 | 无，必须显式提供 | 常见为 Call、ListPush、MapSet 等有副作用的表达式。 |


返回值/执行效果：语句，不保留值；不替代 Call 关键词。

表达式积木接入 Prefix/正文时自动添加真实 Do 节点，原表达式仍能单独拖走。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( & "你好" )
```

<a id="syntax-6b0143d03864"></a>

### Return

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：结束当前函数或闭包并返回结果。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 类型应符合函数返回类型，不能省略。 |


返回值/执行效果：跳出当前函数；不能在顶层独立使用。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Twice ( Int X ) ( Return * X 2 )
Do Call EchoLine ( $ Call Twice ( 6 ) )
```

<a id="syntax-1e3abf61a37e"></a>

### If

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：按条件选择一组语句执行。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Condition | Bool 表达式 | 是 | 无，必须显式提供 | True 执行第一分支，False 执行第二分支。 |
| Then | 语句列表 | 是 | 无，必须显式提供 | 条件成立时执行。 |
| Else | 语句列表 | 是 | 无，必须显式提供 | 条件不成立时执行；无操作请写 ()。 |


返回值/执行效果：控制流语句，不产生值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int N 5
If > N 3 ( Do Call EchoLine ( & "大于 3" ) ) ( Do Call EchoLine ( & "不大于 3" ) )
```

<a id="syntax-f1b05a744bc2"></a>

### While

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：条件为 True 时重复执行正文。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Condition | Bool 表达式 | 是 | 无，必须显式提供 | 每轮开始前重新求值。 |
| Body | 语句列表 | 是 | 无，必须显式提供 | 每轮执行，可用 Break、Gap、Return。 |


返回值/执行效果：循环语句；应确保条件会变化或能退出。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int N 0
While < N 3 ( Do Call EchoLine ( $ N ) Assign N + N 1 )
```

<a id="syntax-ca15ebc05a3c"></a>

### For

**适用范围：** 本站当前 For 语法使用 Int；To 终点不包含在内。

用途：按数值区间重复执行。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Type | 整数/数值类型 | 是 | 无，必须显式提供 | 本例 Int。 |
| Name | 标识符 | 是 | 无，必须显式提供 | 循环变量名，只在循环内可见。 |
| From Start | 表达式 | 是 | 无，必须显式提供 | 起点，包含此值。 |
| To Stop | 表达式 | 是 | 无，必须显式提供 | 终点，不包含此值。 |
| Step Increment | 表达式 | 否 | 1 | 步长，不可为 0；负数递减。 |
| Body | 语句列表 | 是 | 无，必须显式提供 | 每轮执行的操作。 |


返回值/执行效果：循环语句；边界和步长进入时各求值一次。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
For Int I From 0 To 3 ( Do Call EchoLine ( $ I ) )
For Int J From 3 To 0 Step -1 ( Do Call EchoLine ( $ J ) )
```

<a id="syntax-560c9e47b124"></a>

### ForEach

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：按快照顺序遍历 List 或 Map。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Bindings | ( 标识符 ... ) | 是 | 无，必须显式提供 | List 单名绑定值，双名绑定索引和值；Map 单名绑定键，双名绑定键和值。 |
| Container | List 或 Map 表达式 | 是 | 无，必须显式提供 | 开始遍历时取得快照，不随正文增删改变当前轮次。 |
| Body | 语句列表 | 是 | 无，必须显式提供 | 绑定只在循环内可见，支持 Break/Gap/Return。 |


返回值/执行效果：循环语句，不产生值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "a" 1 Pair & "b" 2 )
ForEach ( Key Value ) Data ( Do Call EchoLine ( + @ Key $ Value ) )
```

<a id="syntax-f71081fb0af4"></a>

### Break

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：退出最近一层循环。

参数：
没有操作数。

返回值/执行效果：控制流语句，没有返回值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
For Int I From 0 To 10 ( If == I 3 ( Break ) () Do Call EchoLine ( $ I ) )
```

<a id="syntax-cb129306bc6f"></a>

### Gap

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：结束当前轮，继续最近一层循环的下一轮；For 会先推进计数器。

参数：
没有操作数。

返回值/执行效果：控制流语句，没有返回值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
For Int I From 0 To 4 ( If == I 1 ( Gap ) () Do Call EchoLine ( $ I ) )
```

<a id="syntax-e2fc46feeb42"></a>

### Nop

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：不做任何操作的语句。

参数：
没有操作数。

返回值/执行效果：控制流语句，没有返回值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Nop
Do Call EchoLine ( & "继续" )
```

<a id="syntax-d17d84a60499"></a>

### Exit

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：结束当前顶层程序。

参数：
没有操作数。

返回值/执行效果：控制流语句，没有返回值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( & "结束前" )
Exit
```

<a id="syntax-b073f6c68ef8"></a>

### Scope

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：执行局部作用域正文。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Body | 语句列表 | 是 | 无，必须显式提供 | 在内声明的变量离开 Scope 后不可直接访问。 |


返回值/执行效果：语句。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int X 1
Scope ( Var Int X 2 Do Call EchoLine ( $ X ) )
Do Call EchoLine ( $ X )
```

<a id="syntax-2cff9baabf56"></a>

### Import

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：以显式模块名导入一个源码文件或目录包。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Alias | 标识符 | 是 | 无，必须显式提供 | 本文件选择该模块时使用的名称，可自行命名。 |
| Path | String 字面量 | 是 | 无，必须显式提供 | 相对当前源码文件查找，随后查运行时模块目录；包入口为 module.verysh/index.verysh。 |


返回值/执行效果：导入语句，模块全局只初始化一次，名称隔离。

不用点号访问，也不支持 Import As；循环导入会报错。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Import Sys & "system"
Do Call EchoLine ( Call From Sys Platform () )
```

<a id="syntax-218197693424"></a>

### From

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：选择模块导出的函数、变量、类型或子模块。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Module | 模块选择器 | 是 | 无，必须显式提供 | 模块别名或嵌套 From 选择。 |
| Name | 导出的标识符 | 是 | 无，必须显式提供 | 未 Export 的名称不能从模块外访问。 |


返回值/执行效果：值、函数选择器、类型或模块，取决于被选择成员。

本例需要 Python 工作进程；外层 Call From 和内层 From 分别选函数与子库。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Import Py & "python"
Do Call EchoLine ( $ Call From From Py Math Sqrt ( 9.0 ) )
```

<a id="syntax-3664895579f0"></a>

### Export

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：声明当前模块对外可见的名称。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Names | 名称列表 | 是 | 无，必须显式提供 | 函数、全局、类型和导入子库名称；空列表表示不公开名称。 |


返回值/执行效果：声明，不产生返回值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Add ( Int A Int B ) ( Return + A B )
Export ( Add )
Do Call EchoLine ( $ Call Add ( 2 3 ) )
```

<a id="syntax-c803710302d5"></a>

### Function

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：取得稳定的具名函数值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Selector | 函数选择器 | 是 | 无，必须显式提供 | 函数名或 From 模块 函数；不是调用，不写实参列表。 |


返回值/执行效果：Func；REPL 重定义该函数后使用最新定义，签名不匹配会报错。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Twice ( Int X ) ( Return * X 2 )
Var Func F Function Twice
Do Call EchoLine ( $ Call Value F ( 4 ) )
```

<a id="syntax-862a3f0fc3ca"></a>

### Lambda

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：创建匿名函数及显式捕获环境。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Result | 类型 | 是 | 无，必须显式提供 | 返回值类型。 |
| Parameters | 参数列表 | 是 | 无，必须显式提供 | 类型和名称成对，无参数写 ()。 |
| Captures | 名称列表 | 是 | 无，必须显式提供 | 要保存的外层变量名，无捕获写 ()。 |
| Body | 语句列表 | 是 | 无，必须显式提供 | 正文，用 Return 返回结果。 |


返回值/执行效果：Func；基础值和结构体复制，类/容器保留引用，环境离开原作用域后仍有效。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Func F Lambda Int ( Int X ) ( Offset ) ( Return + X Offset )
Do Call EchoLine ( $ Call Value F ( 5 ) )
```

<a id="syntax-8e37953d23da"></a>

### Value

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：Call Value 用于调用一个 Func。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| FunctionValue | Func 表达式 | 是 | 无，必须显式提供 | 变量、容器中取出的函数或 Lambda。 |
| Arguments | 实参列表 | 是 | 无，必须显式提供 | 按被调用函数签名提供。 |


返回值/执行效果：被调用函数的结果。

Value 在此处是 Call 的选择形式，不是一个能单独求值的普通关键词。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Func F Lambda Int ( Int X ) () ( Return + X 1 )
Do Call EchoLine ( $ Call Value F ( 4 ) )
```

<a id="syntax-5e95797a7202"></a>

### Struct

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：定义按值复制的结构体。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Name | 标识符 | 是 | 无，必须显式提供 | 自定义类型名。 |
| Members | 成员语句列表 | 是 | 无，必须显式提供 | Field 字段定义。 |


返回值/执行效果：定义语句；New 创建值对象。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-4f3a9bd00397"></a>

### Class

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：定义引用语义的类。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Name | 标识符 | 是 | 无，必须显式提供 | 自定义类名。 |
| Extends BaseType | 类型选择 | 否 | 无基类 | 可选单继承。 |
| Members | 成员列表 | 是 | 无，必须显式提供 | 字段、构造器、方法以及访问修饰。 |


返回值/执行效果：定义语句；赋值/传参共享实例。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-f45fc1dfdc96"></a>

### Field

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：定义一个字段。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Type | 类型 | 是 | 无，必须显式提供 | 字段值的类型。 |
| Name | 标识符 | 是 | 无，必须显式提供 | 字段名称。 |


返回值/执行效果：成员声明；未显式构造的基础字段使用类型零值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-34b291c67838"></a>

### Init

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：定义类的构造器。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Parameters | 参数列表 | 是 | 无，必须显式提供 | 与 Def 一样的类型/名称对。 |
| Body | 语句列表 | 是 | 无，必须显式提供 | 初始化字段，Self 为新对象。 |


返回值/执行效果：构造声明，不声明返回类型；由 New 调用。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-18fdd549b2ed"></a>

### New

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：创建结构体或类实例。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Type | 类型选择 | 是 | 无，必须显式提供 | 当前或模块导出的自定义类型。 |
| Arguments | 实参列表 | 是 | 无，必须显式提供 | 类按 Init 签名；无构造器结构体可按字段顺序或空列表默认初始化。 |


返回值/执行效果：目标类型的值/对象。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-7c968fb71f50"></a>

### Member

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：访问对象字段或选择方法。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Name | 标识符 | 是 | 无，必须显式提供 | 字段或方法名。 |
| Object | 对象表达式 | 是 | 无，必须显式提供 | 对应类型的已有实例；受访问权限约束。 |


返回值/执行效果：字段值或方法选择器；可写字段可作为 Assign 目标。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-85bc0f95858d"></a>

### Self

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：在类构造器、方法或显式捕获的闭包中表示当前对象。

参数：
没有操作数。

返回值/执行效果：当前对象引用，不能在无对象上下文中使用。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-591935b15b1c"></a>

### Public

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：允许类外访问成员。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Declaration | Field、Init 或 Def 成员声明 | 是 | 无，必须显式提供 | 修饰紧随其后的一个成员声明。 |


返回值/执行效果：访问修饰语句。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-c63eb6720c6e"></a>

### Private

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：仅定义类的内部可访问。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Declaration | Field、Init 或 Def 成员声明 | 是 | 无，必须显式提供 | 修饰紧随其后的一个成员声明。 |


返回值/执行效果：访问修饰语句。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-b0ed26337336"></a>

### Protected

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：允许定义类及派生类内部访问。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Declaration | Field、Init 或 Def 成员声明 | 是 | 无，必须显式提供 | 修饰紧随其后的一个成员声明。 |


返回值/执行效果：访问修饰语句。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Struct Point ( Field Int X Field Int Y )
Class Counter (
    Private Field Int Number
    Public Init ( Int Start ) ( Assign Member Number Self Start )
    Public Def Int Next () ( Assign Member Number Self + Member Number Self 1 Return Member Number Self )
)
Var Point P New Point ( 2 3 )
Var Counter C New Counter ( 10 )
Do Call EchoLine ( $ Member X P )
Do Call EchoLine ( $ Call Member Next C () )
```

<a id="syntax-12896f29629c"></a>

### Extends

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：声明类的单一基类。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| BaseType | 类型选择 | 是 | 无，必须显式提供 | 已定义的类，支持 From 模块 类名。 |


返回值/执行效果：Class 定义的一部分；当前基类 Init 需要无参数。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Class Parent ( Public Def Int Value () ( Return 1 ) )
Class Child Extends Parent ( Public Override Def Int Value () ( Return + Call Member Value Base () 1 ) )
Var Child C New Child ()
Do Call EchoLine ( $ Call Member Value C () )
```

<a id="syntax-43bc0f5fc035"></a>

### Override

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：明确重写继承方法。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Method | Def 声明 | 是 | 无，必须显式提供 | 须匹配可重写基类方法的名称和签名。 |


返回值/执行效果：成员修饰，不产生值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Class Parent ( Public Def Int Value () ( Return 1 ) )
Class Child Extends Parent ( Public Override Def Int Value () ( Return + Call Member Value Base () 1 ) )
Var Child C New Child ()
Do Call EchoLine ( $ Call Member Value C () )
```

<a id="syntax-7b47361aad19"></a>

### Base

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：从派生类方法中选择基类实现。

参数：
没有操作数。

返回值/执行效果：基类视图，用于 Call Member 方法 Base ( ... )。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Class Parent ( Public Def Int Value () ( Return 1 ) )
Class Child Extends Parent ( Public Override Def Int Value () ( Return + Call Member Value Base () 1 ) )
Var Child C New Child ()
Do Call EchoLine ( $ Call Member Value C () )
```

<a id="syntax-fa1d2db62d4d"></a>

### Null

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：表示空引用。

参数：
没有操作数。

返回值/执行效果：空值；不能直接访问其字段或方法。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Any X Null
Do Call EchoLine ( $ IsNull X )
```

<a id="syntax-945b6d060bfe"></a>

### IsNull

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：判断值是否为空。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 任意表达式 | 是 | 无，必须显式提供 | 要判断的值。 |


返回值/执行效果：Bool。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ IsNull Null )
```

<a id="syntax-91da0e645141"></a>

### IsA

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：判断对象是否属于给定类或其派生类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Type | 类类型 | 是 | 无，必须显式提供 | 目标类型。 |
| Object | 对象表达式 | 是 | 无，必须显式提供 | 待判断的实例。 |


返回值/执行效果：Bool；Null 不属于目标对象类型。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Class Animal ()
Class Cat Extends Animal ()
Var Cat C New Cat ()
Do Call EchoLine ( $ IsA Animal C )
```

<a id="syntax-85d6c0718cfe"></a>

### Try

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：执行正文并在错误时展开调用栈进入处理列表。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Body | 语句列表 | 是 | 无，必须显式提供 | 需要捕获异常的操作。 |
| Catch | 固定关键词 | 是 | 无，必须显式提供 | 紧随正文。 |
| Type | Error | 是 | 无，必须显式提供 | 当前异常类型。 |
| Name | 标识符 | 是 | 无，必须显式提供 | 处理列表中的异常变量名。 |
| Handler | 语句列表 | 是 | 无，必须显式提供 | 可以读取 Message/File/Line/Trace。 |


返回值/执行效果：控制流；已完成的副作用不会自动回滚。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Try ( Throw & "示例错误" ) Catch Error E ( Do Call EchoLine ( Member Message E ) )
```

<a id="syntax-c78054582e89"></a>

### Throw

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：抛出消息或重新抛出 Error。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| ErrorOrMessage | String 或 Error 表达式 | 是 | 无，必须显式提供 | 消息会转换为 Error，已有 Error 保留来源调用信息。 |


返回值/执行效果：中断当前执行，寻找外层 Catch。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Try ( Throw Error & "无法继续" ) Catch Error E ( Do Call EchoLine ( Member Message E ) )
```

<a id="syntax-5b4cd3a7f069"></a>

### Catch

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：Try 中声明异常处理分支。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Type | Error | 是 | 无，必须显式提供 | 异常类型。 |
| Name | 标识符 | 是 | 无，必须显式提供 | 接收 Error 值。 |
| Handler | 语句列表 | 是 | 无，必须显式提供 | 异常发生后执行的处理。 |


返回值/执行效果：仅作为 Try 的一部分。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Try ( Throw & "错误" ) Catch Error E ( Do Call EchoLine ( Member Message E ) )
```

<a id="syntax-54a0e8c17ebb"></a>

### Error

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：从文本构造 Error。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Message | String 表达式 | 是 | 无，必须显式提供 | 错误说明；可用于 Throw。 |


返回值/执行效果：Error 值，字段 Message、File、Line、Trace 可读取。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Error E Error & "示例"
Do Call EchoLine ( Member Message E )
```

<a id="syntax-6f202f54a7b2"></a>

### List

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：创建异构引用列表。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Values | 表达式列表 | 否 | List () 创建空列表 | 依次存入元素，可含基础值、容器、对象、Func。 |


返回值/执行效果：List；赋值和传参保留引用。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var List Items List ( 1 & "two" )
Do ListPush Items 3
Do Call EchoLine ( $ ListSize Items )
```

<a id="syntax-be176b0015c4"></a>

### Map

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：创建以 String 为键的有序引用映射。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Pairs | Pair 列表 | 否 | Map () 创建空映射 | 每项为 Pair 键表达式 值表达式。 |


返回值/执行效果：Map；赋值和传参保留引用，键必须是 String。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Options Map ( Pair & "timeout" 60 Pair & "title" & "VerySh" )
Do Call EchoLine ( $ MapGet Options & "timeout" )
```

<a id="syntax-989da04b0aaa"></a>

### Pair

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：在 Map/Capture 选项内声明一个键值对。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Key | String 或 Capture 符号 | 是 | 无，必须显式提供 | Map 里是 String 键，Capture 里是符号名称。 |
| Value | 表达式 | 是 | 无，必须显式提供 | 与键关联的值。 |


返回值/执行效果：父列表使用的键值项，不是独立的通用二元组。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "score" 42 )
Do Call EchoLine ( $ MapGet Data & "score" )
```

<a id="syntax-5969f7079887"></a>

### ListGet

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取列表元素。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Items | List | 是 | 无，必须显式提供 | 待读取的列表。 |
| Index | Int | 是 | 无，必须显式提供 | 从 0 开始的索引，必须在范围内。 |


返回值/执行效果：Any，指定位置的值。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var List Items List ( 1 2 )
Do Call EchoLine ( $ ListGet Items 0 )
```

<a id="syntax-7add41266d6a"></a>

### ListSet

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：替换列表元素。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Items | List | 是 | 无，必须显式提供 | 要修改的列表。 |
| Index | Int | 是 | 无，必须显式提供 | 从 0 开始的有效索引。 |
| Value | Any | 是 | 无，必须显式提供 | 替换的新元素。 |


返回值/执行效果：Bool，写入成功。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var List Items List ( 1 2 )
Do Call EchoLine ( $ ListSet Items 0 9 )
```

<a id="syntax-18a519304a16"></a>

### ListPush

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：向列表末尾追加元素。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Items | List | 是 | 无，必须显式提供 | 要追加的列表。 |
| Value | Any | 是 | 无，必须显式提供 | 追加到末尾的元素。 |


返回值/执行效果：Int，追加后的列表长度。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var List Items List ( 1 2 )
Do Call EchoLine ( $ ListPush Items 3 )
```

<a id="syntax-f22338d20319"></a>

### ListPop

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：删除并返回末尾元素。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Items | List | 是 | 无，必须显式提供 | 非空列表，删除其末尾元素。 |


返回值/执行效果：Any，被移除的末尾元素；空列表抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var List Items List ( 1 2 )
Do Call EchoLine ( $ ListPop Items )
```

<a id="syntax-474e3984631e"></a>

### ListSize

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取列表长度。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Items | List | 是 | 无，必须显式提供 | 要查询元素数的列表。 |


返回值/执行效果：Int 元素个数。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var List Items List ( 1 2 )
Do Call EchoLine ( $ ListSize Items )
```

<a id="syntax-1aaf97e67e56"></a>

### MapGet

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取键对应的值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Data | Map | 是 | 无，必须显式提供 | 要操作的映射。 |
| Key | String | 是 | 无，必须显式提供 | 要查找/写入/删除的键名。 |


返回值/执行效果：Any，键对应值；缺失键抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "score" 42 )
Do Call EchoLine ( $ MapGet Data & "score" )
```

<a id="syntax-a78c6ef9e85b"></a>

### MapSet

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：设置一个键值对。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Data | Map | 是 | 无，必须显式提供 | 要操作的映射。 |
| Key | String | 是 | 无，必须显式提供 | 要查找/写入/删除的键名。 |
| Value | Any | 是 | 无，必须显式提供 | 写入的新值。 |


返回值/执行效果：Bool，添加/更新成功。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "score" 42 )
Do Call EchoLine ( $ MapSet Data & "score" 99 )
```

<a id="syntax-e2892aaa9dfc"></a>

### MapHas

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：检查键是否存在。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Data | Map | 是 | 无，必须显式提供 | 要操作的映射。 |
| Key | String | 是 | 无，必须显式提供 | 要查找/写入/删除的键名。 |


返回值/执行效果：Bool，键存在为 True。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "score" 42 )
Do Call EchoLine ( $ MapHas Data & "score" )
```

<a id="syntax-deefffe388b0"></a>

### MapRemove

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：删除一个键值对。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Data | Map | 是 | 无，必须显式提供 | 要操作的映射。 |
| Key | String | 是 | 无，必须显式提供 | 要查找/写入/删除的键名。 |


返回值/执行效果：Bool，是否移除了键。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "score" 42 )
Do Call EchoLine ( $ MapRemove Data & "score" )
```

<a id="syntax-1757d3c35708"></a>

### MapSize

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：查询键的个数。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Data | Map | 是 | 无，必须显式提供 | 要操作的映射。 |


返回值/执行效果：Int 键值对个数。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Data Map ( Pair & "score" 42 )
Do Call EchoLine ( $ MapSize Data )
```

<a id="syntax-39c3be1198a2"></a>

### Index

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取或赋值数组元素。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Array | 数组名 | 是 | 无，必须显式提供 | 用 Var Type @ Name [维度] 声明的数组。 |
| Indices | [ 整数 , 整数 ... ] | 是 | 无，必须显式提供 | 每维从 0 开始，数量须与维数一致。 |


返回值/执行效果：声明的元素类型值，可用 Assign 写入。

方括号仅用于数组维度/索引，是列表圆括号之外明确保留的索引语法。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int @ Grid [ 2 , 3 ]
Assign Grid [ 1 , 2 ] 7
Do Call EchoLine ( $ Grid [ 1 , 2 ] )
```

<a id="syntax-a318c24216de"></a>

### +

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：相加，或连接两个字符串。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 数值或两个 String | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 数值或两个 String | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ + 2 3 )
```

<a id="syntax-3973e022e932"></a>

### -

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：相减。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ - 7 2 )
```

<a id="syntax-684888c0ebb1"></a>

### *

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：相乘。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ * 3 4 )
```

<a id="syntax-8a5edab28263"></a>

### /

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：相除，除数不能为 0。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ / 8 2 )
```

<a id="syntax-bbf3f11cb5b4"></a>

### %

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：取余，右操作数不能为 0。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 整数 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 整数 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ % 7 3 )
```

<a id="syntax-951dcee3a7a4"></a>

### &

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：整数按位与；若后接带引号文本则是字符串前缀。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 整数 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 整数 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ & 6 3 )
```

<a id="syntax-cbe5cfdf7c21"></a>

### |

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：整数按位或。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 整数 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 整数 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ | 4 1 )
```

<a id="syntax-74cd9ef9c7e1"></a>

### ^

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：整数按位异或。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 整数 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 整数 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ ^ 7 3 )
```

<a id="syntax-f16474a9900a"></a>

### ==

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：比较是否相等。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 可比较的同类值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 可比较的同类值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ == 2 2 )
```

<a id="syntax-c10987bd7cf8"></a>

### !=

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：比较是否不相等。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 可比较的同类值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 可比较的同类值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ != 2 3 )
```

<a id="syntax-62b67e1f685b"></a>

### >

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：比较左值是否较大。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 可比较数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 可比较数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ > 3 2 )
```

<a id="syntax-92a00d7d91da"></a>

### >=

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：比较左值是否不小于右值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 可比较数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 可比较数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ >= 3 3 )
```

<a id="syntax-dabd3aff769f"></a>

### <

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：比较左值是否较小。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 可比较数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 可比较数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ < 2 3 )
```

<a id="syntax-b60080dc8b89"></a>

### <=

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：比较左值是否不大于右值。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | 可比较数值 | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | 可比较数值 | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ <= 2 2 )
```

<a id="syntax-73e7b6f86214"></a>

### &&

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：逻辑与；使用前缀书写。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | Bool | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | Bool | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ && True False )
```

<a id="syntax-565d240f5343"></a>

### ||

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：逻辑或；使用前缀书写。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | Bool | 是 | 无，必须显式提供 | 第一个操作数，仍可为嵌套前缀表达式。 |
| Right | Bool | 是 | 无，必须显式提供 | 第二个操作数，仍可为嵌套前缀表达式。 |


返回值/执行效果：比较/逻辑返回 Bool，其余返回运算结果的数值类型或 String。

例如 + + 1 2 3 的树为 +(+(1,2),3)，不要加算术分组括号。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ || True False )
```

<a id="syntax-bb7208bc9b5d"></a>

### !

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：逻辑取反。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | Bool | 是 | 无，必须显式提供 | True 变 False，False 变 True。 |


返回值/执行效果：Bool。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ ! False )
```

<a id="syntax-c3641f8544d7"></a>

### @

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：显式读取字符串变量。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Name | String 变量名 | 是 | 无，必须显式提供 | 必须是已声明的 String 变量，不加引号。 |


返回值/执行效果：String 值。

在 Var Type @ Name [维度] 中，@ 是数组声明标记，不是字符串读取。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var String Text & "Hello"
Do Call EchoLine ( @ Text )
```

<a id="syntax-09fc96082d34"></a>

### $

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：将一个值转换为可输出的文本。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 数值、Bool、对象或容器等。 |


返回值/执行效果：String；不会把容器深复制为 JSON，请用 JSON 库取得 JSON。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ + 2 3 )
```

<a id="syntax-473287f8298d"></a>

### string

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：用 & 和带引号文字创建 UTF-8 字符串。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| QuotedText | 带引号文本 | 是 | 无，必须显式提供 | 写作 & "文本"；用 $n/$t/$$/$" 表示换行、制表、美元和引号。 |


返回值/执行效果：String。

& 的字符串子节点与整体字符串表达式独立；输出变量时应替换整个 & 子树。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var String Text & "你好$nVerySh"
Do Call EchoLine ( @ Text )
```

<a id="syntax-0b5f608070c6"></a>

### Int

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 Int 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：Int 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Value Int 3.7
Do Call EchoLine ( $ Value )
```

<a id="syntax-d1d87c4717d5"></a>

### Long

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 Long 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：Long 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Long Value Long 42
Do Call EchoLine ( $ Value )
```

<a id="syntax-529441523bec"></a>

### Double

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 Double 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：Double 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Double Value Double 3
Do Call EchoLine ( $ Value )
```

<a id="syntax-49f411f0a1a7"></a>

### Bool

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 Bool 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：Bool 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Bool Value Bool 1
Do Call EchoLine ( $ Value )
```

<a id="syntax-cbaeb39b137e"></a>

### Char

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 Char 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：Char 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Char Value Char 65
Do Call EchoLine ( $ Value )
```

<a id="syntax-b2ef230e7f4f"></a>

### String

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 String 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：String 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var String Value String 42
Do Call EchoLine ( $ Value )
```

<a id="syntax-2b505597daa7"></a>

### Any

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把值转换或装入 Any 类型。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | 表达式 | 是 | 无，必须显式提供 | 源值必须支持此类型的转换；Char 为单字节，Long 为 64 位整数。 |


返回值/执行效果：Any 值；失败抛出 Error。

Var、Def、Field 等位置中的该词是类型标识，不需要再跟一个转换值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Any Value Any 42
Do Call EchoLine ( $ Value )
```

<a id="syntax-3cbc87c7681f"></a>

### True

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：布尔常量。

参数：
没有操作数。

返回值/执行效果：Bool。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ True )
```

<a id="syntax-60a33e6cf515"></a>

### False

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：布尔常量。

参数：
没有操作数。

返回值/执行效果：Bool。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ False )
```

<a id="syntax-67bc484430fe"></a>

### Random

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：产生运行时随机值。

参数：
没有操作数。

返回值/执行效果：运行时数值，不能作为可复现序列的固定种子。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Random )
```

<a id="syntax-340f463033e0"></a>

### Code

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：保存一段程序而不立即执行。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Body | 语句列表 | 是 | 无，必须显式提供 | 要封装的完整语句；内部可以有定义和 Export。 |


返回值/执行效果：Code。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Code Unit Code ( Def Int Add ( Int A Int B ) ( Return + A B ) Export ( Add ) )
Do Call EchoLine ( & "代码值已保存，尚未运行" )
```

<a id="syntax-0e29c966e555"></a>

### ParseCode

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：在运行时解析源码文本。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Source | String | 是 | 无，必须显式提供 | 可组成完整表达式或语句列表的源码。 |
| Origin | String | 是 | 无，必须显式提供 | 诊断所用来源路径或名称，不必是现有文件。 |


返回值/执行效果：Code；语法错误抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Code Unit ParseCode & "Def Int Main () ( Return 3 )" & "memory.verysh"
Do Call EchoLine ( & "解析成功" )
```

<a id="syntax-a11360825850"></a>

### Compile

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：把 Code 动态导出为 DLL 或 EXE，使用与命令行相同的编译服务。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Kind | DLL 或 EXE | 是 | 无，必须显式提供 | 产物种类。 |
| Unit | Code | 是 | 无，必须显式提供 | 要编译的代码值。 |
| Options | 选项列表 | 是 | 无，必须显式提供 | Output、Target、Entry、Capture 等选项；当前 Compile 必须包含非空 Output。 |


返回值/执行效果：Artifact，包含产物及依赖信息；编译错误为 Error。

示例在当前工作目录创建 verysh-help.dll（其他平台为本机动态库格式）。Output 必须显式指定且非空，没有默认路径；Target 默认当前运行时架构，Entry 默认 Main。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-b2439bcb8dee"></a>

### Output

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：指定 Compile 的产物路径。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Path | String | 是 | 无，必须显式提供 | 输出文件路径，可相对当前工作目录。 |


返回值/执行效果：编译选项。

仅在 Compile 的选项列表中使用；窗口、Python 对象、文件/网络连接和原生指针不能直接捕获。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-978354db0c00"></a>

### Target

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：指定目标架构。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Architecture | X64 或 X86 | 是 | 无，必须显式提供 | Windows 目标架构；各平台只能加载匹配的本机二进制。 |


返回值/执行效果：编译选项；省略时为当前运行时架构。

仅在 Compile 的选项列表中使用；窗口、Python 对象、文件/网络连接和原生指针不能直接捕获。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-2649e082d9a2"></a>

### Entry

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：选择 EXE 入口。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Name | 标识符 | 是 | 无，必须显式提供 | EXE 入口函数名，默认 Main。 |


返回值/执行效果：编译选项。

仅在 Compile 的选项列表中使用；窗口、Python 对象、文件/网络连接和原生指针不能直接捕获。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-1900b478a586"></a>

### Capture

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：保存指定变量当前值作为导出快照。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Pairs | Pair 符号 值表达式 的列表 | 否 | 不捕获宿主状态 | 显式冻结指定符号的当前对象图。 |


返回值/执行效果：编译选项。

仅在 Compile 的选项列表中使用；窗口、Python 对象、文件/网络连接和原生指针不能直接捕获。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-3a71ac07ed51"></a>

### LoadArtifact

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：加载编译产生的动态模块。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Built | Artifact | 是 | 无，必须显式提供 | Compile DLL 返回的产物值。 |


返回值/执行效果：Module，用 Call From M 函数 ( ... ) 调用导出。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-e06171a1c467"></a>

### Artifact

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：动态编译结果的类型。

参数：
没有操作数。

返回值/执行效果：Compile 返回 Artifact；不是一个独立的无参构造函数。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-f148224ae44f"></a>

### Module

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：动态模块值的类型。

参数：
没有操作数。

返回值/执行效果：LoadArtifact 返回 Module；静态模块由 Import 选择。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Offset 10
Var Code Unit Code ( Def Int Add ( Int X ) ( Return + X Offset ) Export ( Add ) )
Var Artifact Built Compile DLL Unit ( Output & "verysh-help.dll" Capture ( Pair Offset Offset ) )
Var Module M LoadArtifact Built
Do Call EchoLine ( $ Call From M Add ( 5 ) )
```

<a id="syntax-ebf8a7235982"></a>

### Func

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：函数值类型，可放容器、作为形参和返回值。

参数：
没有操作数。

返回值/执行效果：Function 或 Lambda 生成 Func，Call Value 调用。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Func F Lambda Int ( Int X ) () ( Return + X 1 )
Do Call EchoLine ( $ Call Value F ( 2 ) )
```

<a id="syntax-d509e4938852"></a>

### Native

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：调用已绑定的 C++、Python 或 System 后端。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Backend | Cpp / Python / System | 是 | 无，必须显式提供 | 固定后端选择。 |
| Arguments | 后端参数列表 | 是 | 无，必须显式提供 | 操作名和具体参数；每个绑定的规则见其库文档。 |


返回值/执行效果：由操作决定的值；外部错误转换为 Error。

需要可用的 Python 工作进程；普通代码优先使用带文档的前缀模块，避免手写底层协议。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Native Python ( & "invoke_path" & "math" List ( & "sqrt" ) List ( 9.0 ) Map () ) )
```

<a id="syntax-7f0d68e02e84"></a>

### PythonObject

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：Python 外部对象的句柄类型。

参数：
没有操作数。

返回值/执行效果：由 Python 绑定创建，不能直接捕获进 DLL/EXE。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Import B & "python/basic"
Var PythonObject Mod Call From B ImportModule ( & "math" )
Do Call EchoLine ( $ Call From B GetAttr ( Mod List ( & "pi" ) ) )
Do Call From B Release ( Mod )
```

<a id="syntax-6b0ecd00de78"></a>

### NativeObject

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：C++ 外部对象的句柄类型。

参数：
没有操作数。

返回值/执行效果：由绑定创建，必须通过该绑定释放，不是 Int 指针。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Import C & "generated/sample_cpp/module.verysh"
Var Any Counter Call From C Counter_Create ( 1 )
Do Call EchoLine ( $ Call From C Counter_Get ( Counter ) )
Do Call From C Release ( Counter )
```

<a id="syntax-d6bd8c0aeee8"></a>

### Document

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：在库自己的文件中注册用途、参数和示例说明。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Topic | 标识符 | 是 | 无，必须显式提供 | 函数名、类内方法名，或 Library。 |
| Body | String 字面量 | 是 | 无，必须显式提供 | 说明文本，可用 $n 换行和 $" 引号。 |


返回值/执行效果：文档声明，不执行例子。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Def Int Add ( Int A Int B ) ( Return + A B )
Document Add & "参数 A/B 均为必填 Int，无默认值；返回两数之和。示例：Call Add ( 2 3 )。"
Do Call Help ( & "Add" )
```

<a id="syntax-dc20b3d5d2cd"></a>

### Library

**适用范围：** 语言级参考；可能依赖文件、外部模块或导出工具，受本站单文件与沙箱限制，不要直接用于算法提交。

用途：声明源码库的文档名。

参数：
| 参数/位置 | 类型或语法角色 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Name | String 字面量 | 是 | 无，必须显式提供 | 库名，用于说明和导出；动态 Compile 不要求该声明。 |


返回值/执行效果：库声明。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Library & "demo"
Document Library & "示例库"
Def Int Add ( Int A Int B ) ( Return + A B )
Export ( Add )
Do Call EchoLine ( $ Call Add ( 2 3 ) )
```

<a id="syntax-2b4244fb2663"></a>

### comments

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：在源码中添加注释。

参数：
没有操作数。

返回值/执行效果：忽略注释内容；树和文本转换时保留。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
# 这是行注释
## 这是成对注释 ##
Do Call EchoLine ( & "注释不执行" )
```

## 内置函数

<a id="runtime-dc1e8a3eb59e"></a>

### ArgCount

**适用范围：** 命令行参数接口；本站不提供自定义启动参数，请从标准输入读取题目数据。

用途：读取传给脚本的命令行参数个数。

参数：
无参数，写 ()。

返回值：Int；不包括解释器与源文件名。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call ArgCount () )
```

<a id="runtime-3df61483d1c4"></a>

### Arg

**适用范围：** 命令行参数接口；本站不提供自定义启动参数，请从标准输入读取题目数据。

用途：读取一个命令行参数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Index | Int | 是 | 无，必须显式传入 | 从 0 开始的参数位置；负数或越界返回空字符串。 |


返回值：String；本例未传参数时为空。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( Call Arg ( 0 ) )
```

<a id="runtime-f1a41b906026"></a>

### TextEqual

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：判断两个字符串是否完全相同。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | String | 是 | 无，必须显式传入 | 左侧 UTF-8 文本。 |
| Right | String | 是 | 无，必须显式传入 | 右侧 UTF-8 文本，区分大小写。 |


返回值：Bool。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call TextEqual ( & "abc" & "abc" ) )
```

<a id="runtime-5297477c4942"></a>

### TextLength

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算字符串的字节数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 要计算长度的 UTF-8 字符串。 |


返回值：Int；不是 Unicode 字符个数，中文通常占多个字节。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call TextLength ( & "abc" ) )
```

<a id="runtime-f45fc1dfdc96"></a>

### Field

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：按字符 | 拆分并读取一个字段。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 用竖线分隔的文本，如 a|42|c。 |
| Index | Int | 是 | 无，必须显式传入 | 从 0 开始的字段索引，不能为负；不存在返回空字符串。 |


返回值：String，不解析引号或转义分隔符。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( Call Field ( & "a|42|c" 1 ) )
```

<a id="runtime-4263e467568f"></a>

### IntField

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取指定字段并解析为 Int。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 竖线分隔文本。 |
| Index | Int | 是 | 无，必须显式传入 | 从 0 开始的字段位置，目标必须是完整整数文本。 |


返回值：Int；字段不存在或不是完整整数时抛出 Error。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call IntField ( & "a|42|c" 1 ) )
```

<a id="runtime-01eeaba3278c"></a>

### TryIntField

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：尝试把一个字段解析到引用变量。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 竖线分隔文本。 |
| Index | Int | 是 | 无，必须显式传入 | 从 0 开始的字段位置，不能为负。 |
| Destination | Int（引用写回） | 是 | 无，必须显式传入 | 已有 Int 变量，成功后写回，解析失败保持原值。 |


返回值：Bool；解析成功 True，格式不符 False。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Number 0
Do Call EchoLine ( $ Call TryIntField ( & "a|42|c" 1 Number ) )
Do Call EchoLine ( $ Number )
```

<a id="runtime-e0af14b7ee0f"></a>

### TickMs

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取单调计时器。

参数：
无参数，写 ()。

返回值：Int，毫秒计数模 2^31；不是 Unix 时间，长时间运行可能回绕。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call TickMs () )
```

<a id="runtime-c93d34f3176d"></a>

### Require

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：断言一个条件成立。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Condition | Bool | 是 | 无，必须显式传入 | 必须满足的 Bool 条件。 |
| Message | String | 是 | 无，必须显式传入 | 条件为 False 时的错误说明 String。 |


返回值：Bool 占位值；False 条件抛出 Error，不会静默返回失败。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Require ( == + 2 3 5 & "加法结果不正确" )
Do Call EchoLine ( & "检查通过" )
```

<a id="runtime-b79cac926e0b"></a>

### Help

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：把已注册的帮助打印到控制台。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Topic | String | 是 | 无，必须显式传入 | 帮助主题 String，如 Var、Map、EchoLine、From 模块 函数；空字符串列已加载函数。 |


返回值：Bool 占位 False，应忽略。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Help ( & "Map" )
```

<a id="runtime-49f4e57c2625"></a>

### Doc

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：取得完整帮助文本，供界面或程序使用。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Topic | String | 是 | 无，必须显式传入 | 要读取的帮助主题 String，规则与 Help 相同。 |


返回值：String，含签名及说明；不存在的主题抛出 Error。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var String Text Call Doc ( & "Map" )
Do Call EchoLine ( @ Text )
```

<a id="runtime-47ba22bf4f18"></a>

### RegisterDoc

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：在当前运行时中注册或替换文档。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Topic | String | 是 | 无，必须显式传入 | 新主题名称 String，不能为空。 |
| Text | String | 是 | 无，必须显式传入 | 帮助正文 String，可包含换行和代码示例。 |


返回值：Bool 占位 False；库文档优先使用源码 Document 声明。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call RegisterDoc ( & "Demo" & "这是会话内的演示主题，无参数、无返回值。" )
Do Call Help ( & "Demo" )
```

<a id="runtime-8a6bdb6b18da"></a>

### Load

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：加载一个原生库并注册函数、常量和库内文档。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Library | String | 是 | 无，必须显式传入 | 要加载的库名 String，如 io、math、threads；选择与当前平台架构匹配的库。 |
| Pack | Bool | 否 | 初始 Compile 设置 | 可选 Bool，是否打包 DLL 依赖；普通运行可省略。 |


返回值：Bool；旧接口的占位结果，不宜作为加载成功判断，失败抛出 Error。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call sqrt ( 9.0 ) )
```

<a id="runtime-02eff08f7634"></a>

### RegexCount

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算不重叠的 UTF-8 正则匹配数，使用随程序静态链接的 PCRE2 JIT。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Pattern | String | 是 | 无 | PCRE2 模式；如 [0-9]+。 |
| Text | String | 是 | 无 | 要搜索的 UTF-8 文本。 |

返回值：Int。无匹配为 0；模式错误抛出 Error，包含字节位置。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $$ Call RegexCount ( & "[0-9]+" & "a12b34" ) )
```

<a id="runtime-aa6cbba3cd61"></a>

### RegexReplace

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：全局替换 UTF-8 正则匹配。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Pattern | String | 是 | 无 | PCRE2 模式，可用括号捕获。 |
| Replacement | String | 是 | 无 | 替换文本；$1 引用第一个捕获组，$$ 表示字面美元符号。VerySh 源码中的美元符号需再用 $$ 转义。 |
| Text | String | 是 | 无 | 待替换的 UTF-8 文本。 |

返回值：String。未匹配则保持原文；模式、UTF-8 或替换表达式错误抛出 Error。输出上限 64 MiB。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( Call RegexReplace ( & "[0-9]+" & "#" & "a12b34" ) )
```

<a id="runtime-06d7161d02be"></a>

### RegexVersion

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：查询内置 PCRE2 版本。

参数：
无参数，写 ()。

返回值：String；例如 10.49 及上游发布日期。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( Call RegexVersion () )
```

<a id="runtime-2232a3d0a4dd"></a>

### RegexJITSupported

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：查询内置正则引擎是否支持 JIT。具体模式无法 JIT 时会自动由 PCRE2 解释执行。

参数：
无参数，写 ()。

返回值：Bool；表示引擎能力，不代表每个模式都成功生成机器码。

完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $$ Call RegexJITSupported () )
```

## io 输入输出库

<a id="io-dc20b3d5d2cd"></a>

### io 库说明

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

库 io。参数列表写在 Call 后的括号中。固定位置参数全部必填，没有省略时的默认值；接口明确说明的 0、空字符串等特殊值是必须传入的值。每个函数的返回类型、引用写回和完整初始化/释放示例见对应帮助。

<a id="io-8335e4c92c40"></a>

### Echo

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：输出文本。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 原样输出的 UTF-8 文本；不自动追加换行。 |


返回值：Bool。按插件约定返回 False，应忽略。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "你好" )
Do Call Echo ( & "，VerySh$n" )
```

<a id="io-71988c4d8e08"></a>

### Text

**适用范围：** 桌面或交互终端接口；本站判题环境不适用，不要用于算法提交。

用途：旧 Windows 窗口消息文本接口。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Window | Int | 是 | 无，必须显式传入 | 旧接口 Int 窗口标识；不能可靠表示 64 位完整 HWND。 |
| Text | String | 是 | 无，必须显式传入 | 逐字节发送的文本；空文本不发送字符。 |
| DelayMs | Int | 是 | 无，必须显式传入 | 每发送一个字节后等待的毫秒数，非负。 |
| Enter | Bool | 是 | 无，必须显式传入 | True 额外发送回车，False 不发送。 |


返回值：Bool。返回 False，应忽略。64 位自动化请避免依赖此 Int 窗口接口。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
# 旧接口的空消息示例，不向任何窗口发送字符。
Do Call Text ( 0 & "" 0 False )
```

<a id="io-cb09d412cce2"></a>

### Speak

**适用范围：** 桌面或交互终端接口；本站判题环境不适用，不要用于算法提交。

用途：Windows 语音朗读。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 交给 Windows 语音接口朗读的文本。 |


返回值：Bool。返回 False，应忽略；仅 Windows 语音环境可用。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Speak ( & "Hello VerySh" )
```

<a id="io-f8647cbacc64"></a>

### EchoLine

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：输出文本并自动追加换行。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Text | String | 是 | 无，必须显式传入 | 要输出的一整段 UTF-8 文本。 |


返回值：Bool。返回 False，应忽略。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( & "你好，VerySh" )
```

<a id="io-1278166f1434"></a>

### Flush

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：刷新控制台输出缓冲。

参数：
无参数，写空列表 ()。

返回值：Bool。返回 False，应忽略。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "立即显示" )
Do Call Flush ()
```

<a id="io-0c9be4f52a7f"></a>

### ReadLine

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取一行，包括空格，不含行结束符。

参数：
无参数，写空列表 ()。

返回值：String。String；到达 EOF 时抛出 Error。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入一行后按 Enter：" )
Var String Text Call ReadLine ()
Do Call EchoLine ( @ Text )
```

<a id="io-0027ef423bb5"></a>

### ReadToken

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：跳过开头空白并读取一个由空白分隔的词。

参数：
无参数，写空列表 ()。

返回值：String。String；EOF 抛出 Error，行内剩余文本留给下一次读取。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入一个单词后按 Enter：" )
Do Call EchoLine ( Call ReadToken () )
```

<a id="io-1cb98ac3b46a"></a>

### ReadInt

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取一个完整的有符号整数词。

参数：
无参数，写空列表 ()。

返回值：Int。Int；无效内容或 EOF 抛出 Error。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入整数，例如 42：" )
Do Call EchoLine ( $ Call ReadInt () )
```

<a id="io-248afe5202bb"></a>

### ReadDouble

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取一个完整浮点数词。

参数：
无参数，写空列表 ()。

返回值：Double。Double；无效内容或 EOF 抛出 Error。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入小数，例如 3.5：" )
Do Call EchoLine ( $ Call ReadDouble () )
```

<a id="io-705c14dceb20"></a>

### ReadBool

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取 True/False、true/false、1/0。

参数：
无参数，写空列表 ()。

返回值：Bool。Bool；其它内容或 EOF 抛出 Error。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入 True 或 False：" )
Do Call EchoLine ( $ Call ReadBool () )
```

<a id="io-6bf283af6818"></a>

### ReadChar

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：读取一个原始字节，空白也算内容。

参数：
无参数，写空列表 ()。

返回值：Char。Char（单字节），不是完整 Unicode 字符；UTF-8 中文会占多个字节。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入英文字母 A 再按 Enter：" )
Var Char Letter Call ReadChar ()
Do Call EchoLine ( $ Int Letter )
```

<a id="io-9c6e14ba2e6d"></a>

### TryReadLine

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：尝试读取一行文本并写回引用参数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Destination | String（引用写回） | 是 | 无，必须显式传入 | 接收结果的已有 String 变量，必须传变量而非字面量；失败保持原值。 |


返回值：Bool。成功 True，格式不符或 EOF 为 False；无效词会被消费。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var String Value & ""
Do Call Echo ( & "请输入一行文本：" )
Var Bool Ok Call TryReadLine ( Value )
Do Call EchoLine ( $ Ok )
Do Call EchoLine ( $ Value )
```

<a id="io-f08c0b761334"></a>

### TryReadInt

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：尝试读取整数并写回引用参数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Destination | Int（引用写回） | 是 | 无，必须显式传入 | 接收结果的已有 Int 变量，必须传变量而非字面量；失败保持原值。 |


返回值：Bool。成功 True，格式不符或 EOF 为 False；无效词会被消费。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Int Value 0
Do Call Echo ( & "请输入整数：" )
Var Bool Ok Call TryReadInt ( Value )
Do Call EchoLine ( $ Ok )
Do Call EchoLine ( $ Value )
```

<a id="io-58b15cbdd015"></a>

### TryReadDouble

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：尝试读取小数并写回引用参数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Destination | Double（引用写回） | 是 | 无，必须显式传入 | 接收结果的已有 Double 变量，必须传变量而非字面量；失败保持原值。 |


返回值：Bool。成功 True，格式不符或 EOF 为 False；无效词会被消费。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Double Value 0.0
Do Call Echo ( & "请输入小数：" )
Var Bool Ok Call TryReadDouble ( Value )
Do Call EchoLine ( $ Ok )
Do Call EchoLine ( $ Value )
```

<a id="io-fa457e4f89b4"></a>

### TryReadBool

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：尝试读取True/False并写回引用参数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Destination | Bool（引用写回） | 是 | 无，必须显式传入 | 接收结果的已有 Bool 变量，必须传变量而非字面量；失败保持原值。 |


返回值：Bool。成功 True，格式不符或 EOF 为 False；无效词会被消费。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Bool Value False
Do Call Echo ( & "请输入True/False：" )
Var Bool Ok Call TryReadBool ( Value )
Do Call EchoLine ( $ Ok )
Do Call EchoLine ( $ Value )
```

<a id="io-5c8a2c38b9d6"></a>

### TryReadChar

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：尝试读取ASCII 字符并写回引用参数。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Destination | Char（引用写回） | 是 | 无，必须显式传入 | 接收结果的已有 Char 变量，必须传变量而非字面量；失败保持原值。 |


返回值：Bool。成功 True，格式不符或 EOF 为 False；无效词会被消费。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Var Char Value Char 0
Do Call Echo ( & "请输入ASCII 字符：" )
Var Bool Ok Call TryReadChar ( Value )
Do Call EchoLine ( $ Ok )
Do Call EchoLine ( $ Value )
```

<a id="io-c6a9e39b8f20"></a>

### InputEOF

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：检查前一次输入是否遇到 EOF。

参数：
无参数，写空列表 ()。

返回值：Bool。到达 EOF 返回 True；不主动读取。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call InputEOF (  ) )
```

<a id="io-39ad93eefb09"></a>

### ClearInput

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：清除输入流的错误和 EOF 状态，不丢弃已有字节。

参数：
无参数，写空列表 ()。

返回值：Bool。返回 False，应忽略。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call ClearInput ()
Do Call EchoLine ( $ Call InputEOF () )
```

<a id="io-f2190310efd3"></a>

### DiscardLine

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：丢弃当前行剩余内容和换行，常用于数字读取后改读整行。

参数：
无参数，写空列表 ()。

返回值：Bool。返回 False，应忽略；可能等待用户输入换行。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Echo ( & "输入整数并按 Enter：" )
Var Int N Call ReadInt ()
Do Call DiscardLine ()
Do Call Echo ( & "再输入完整一行：" )
Do Call EchoLine ( Call ReadLine () )
```

<a id="io-8abe8c703600"></a>

### GetKey

**适用范围：** 桌面或交互终端接口；本站判题环境不适用，不要用于算法提交。

用途：阻塞读取终端按键，不回显。

参数：
无参数，写空列表 ()。

返回值：Int。Int 字节键码；Windows 扩展键先返回 0/224，下一次读取返回键码。IDE 管道终端可能不支持。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( & "请在系统交互终端按一个键" )
Do Call EchoLine ( $ Call GetKey () )
```

<a id="io-cd399e789fc7"></a>

### KeyHit

**适用范围：** 桌面或交互终端接口；本站判题环境不适用，不要用于算法提交。

用途：检查交互终端是否有等待读取的按键。

参数：
无参数，写空列表 ()。

返回值：Bool。存在返回 True；不消费按键，IDE 管道终端不保证可用。

读取示例需要在终端/REPL 输入；不会假设输入已有默认值。
完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call EchoLine ( $ Call KeyHit (  ) )
```

<a id="io-2f343666aaa8"></a>

### Format

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：按位置将值填入模板，生成字符串；本函数不输出，配合 Echo / EchoLine 使用。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Template | String | 是 | 无 | 模板文本，使用 & "..."；花括号内是占位符。 |
| Values | List | 是 | 无 | 按顺序排列的值，使用 List ( ... )，可包含不同类型。 |

返回值：String，完成替换和格式化后的 UTF-8 字符串。两个参数始终必填；空容器需显式写 List ()。

完整示例（不需网络或额外配置）：
```verysh
Prefix
Do Call Load ( & "io" )
Var String Name & "小明"
Var Int Count 7
Var Double Score 93.456
Do Call EchoLine (
    Call Format (
        & "姓名：{}，编号：{:04d}，成绩：{:.2f}"
        List ( Name Count Score )
    )
)
Do Call EchoLine (
    Call Format ( & "十六进制：{0:X}，重复：{0}，花括号：{{}}" List ( 255 ) )
)
```
输出：
```text
姓名：小明，编号：0007，成绩：93.46
十六进制：FF，重复：255，花括号：{}
```

格式说明：
| 格式 | 含义 |
| --- | --- |
| {} / {0} | Format 按顺序取值 / 按从 0 开始的索引取值；编号可重复，不可混用两种编号方式。 |
| {name} | FormatMap 查找 String 键 name，不读取作用域变量，也不执行表达式。 |
| {:.2f} / {rate:.2f} | 数值固定两位小数；f 默认六位；接受 Int、Long、Double。 |
| {:04d} / {hp:04d} | 整数至少四位，不足时补零；负号在零之前；d 仅接受 Int、Long。 |
| {:x} / {:X} | 整数十六进制，小写 / 大写；负数保留负号。 |
| {:>8} / {:<8} | 最小宽度八个 Unicode 码点，右 / 左对齐；默认不截断。 |
| {{ / }} | 输出字面量 { / }。 |

宽度最大 10000，精度最大 100，结果最多 16 MiB。补零必须配合数值格式和宽度，不能与 <、> 对齐标记同时使用。小数点固定为英文句点，不受 Windows 区域设置影响。中文按 Unicode 码点计数，不按 UTF-8 字节数计数；中英文混排、组合字符和 emoji 的视觉宽度仍取决于字体。
默认格式：String 原样输出，Bool 为 True/False，Null 为 Null，List/Map 显示元素，用户对象只显示公开字段；循环引用显示 <cycle>，嵌套超过 16 层或单个对象超过 128 项会给出截断标记。多余的 List 项或 Map 键允许保留；缺少所引用的值会报错。
错误：模板或容器类型错误、缺少键/索引、花括号不配对、错误格式、数值类型不符均产生可由 Try 捕获的 Error；消息标明函数及出错的占位符。模板字符串不执行代码。编辑器只对可静态确定的问题标红，动态模板仍在运行时验证。
积木：库 → 原生 → io → Format / FormatMap；拖入会自动加载 io。模板和 List/Map 都是可独立编辑、拖拽的参数节点。函数名可补全；右键积木查看帮助，或通过顶部“帮助”搜索函数名。

<a id="io-697d8634c7ce"></a>

### FormatMap

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：按名称将值填入模板，生成字符串；本函数不输出，配合 Echo / EchoLine 使用。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Template | String | 是 | 无 | 模板文本，使用 & "..."；花括号内是占位符。 |
| Values | Map | 是 | 无 | String 键对应值的映射，使用 Map ( Pair & "键名" 值 ... )。 |

返回值：String，完成替换和格式化后的 UTF-8 字符串。两个参数始终必填；空容器需显式写 Map ()。

完整示例（不需网络或额外配置）：
```verysh
Prefix
Do Call Load ( & "io" )
Var Map Player Map (
    Pair & "name" & "Alice"
    Pair & "hp" 100
    Pair & "rate" 87.65
)
Do Call EchoLine (
    Call FormatMap (
        & "玩家：{name}，生命：{hp}，命中率：{rate:.1f}%"
        Player
    )
)
```
输出：
```text
玩家：Alice，生命：100，命中率：87.7%
```

格式说明：
| 格式 | 含义 |
| --- | --- |
| {} / {0} | Format 按顺序取值 / 按从 0 开始的索引取值；编号可重复，不可混用两种编号方式。 |
| {name} | FormatMap 查找 String 键 name，不读取作用域变量，也不执行表达式。 |
| {:.2f} / {rate:.2f} | 数值固定两位小数；f 默认六位；接受 Int、Long、Double。 |
| {:04d} / {hp:04d} | 整数至少四位，不足时补零；负号在零之前；d 仅接受 Int、Long。 |
| {:x} / {:X} | 整数十六进制，小写 / 大写；负数保留负号。 |
| {:>8} / {:<8} | 最小宽度八个 Unicode 码点，右 / 左对齐；默认不截断。 |
| {{ / }} | 输出字面量 { / }。 |

宽度最大 10000，精度最大 100，结果最多 16 MiB。补零必须配合数值格式和宽度，不能与 <、> 对齐标记同时使用。小数点固定为英文句点，不受 Windows 区域设置影响。中文按 Unicode 码点计数，不按 UTF-8 字节数计数；中英文混排、组合字符和 emoji 的视觉宽度仍取决于字体。
默认格式：String 原样输出，Bool 为 True/False，Null 为 Null，List/Map 显示元素，用户对象只显示公开字段；循环引用显示 <cycle>，嵌套超过 16 层或单个对象超过 128 项会给出截断标记。多余的 List 项或 Map 键允许保留；缺少所引用的值会报错。
错误：模板或容器类型错误、缺少键/索引、花括号不配对、错误格式、数值类型不符均产生可由 Try 捕获的 Error；消息标明函数及出错的占位符。模板字符串不执行代码。编辑器只对可静态确定的问题标红，动态模板仍在运行时验证。
积木：库 → 原生 → io → Format / FormatMap；拖入会自动加载 io。模板和 List/Map 都是可独立编辑、拖拽的参数节点。函数名可补全；右键积木查看帮助，或通过顶部“帮助”搜索函数名。

## math 数学库

<a id="math-dc20b3d5d2cd"></a>

### math 库说明

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

库 math。参数列表写在 Call 后的括号中。固定位置参数全部必填，没有省略时的默认值；接口明确说明的 0、空字符串等特殊值是必须传入的值。每个函数的返回类型、引用写回和完整初始化/释放示例见对应帮助。

<a id="math-cccc68c7928e"></a>

### sin

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算正弦。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Radians | Double | 是 | 无，必须显式传入 | 角度，单位为弧度，π 弧度等于 180°。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call sin ( 0.5 ) )
```

<a id="math-9be28bbe03fa"></a>

### cos

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算余弦。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Radians | Double | 是 | 无，必须显式传入 | 角度，单位为弧度，π 弧度等于 180°。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call cos ( 0.5 ) )
```

<a id="math-0e5123df1126"></a>

### tan

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算正切。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Radians | Double | 是 | 无，必须显式传入 | 角度，单位为弧度，π 弧度等于 180°。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call tan ( 0.5 ) )
```

<a id="math-dd833299f6f3"></a>

### Asin

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算反正弦。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | Double | 是 | 无，必须显式传入 | 正弦值，范围 -1.0—1.0。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call Asin ( 0.5 ) )
```

<a id="math-5a7c226d2367"></a>

### Acos

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算反余弦。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | Double | 是 | 无，必须显式传入 | 余弦值，范围 -1.0—1.0。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call Acos ( 0.5 ) )
```

<a id="math-d96dee8cd633"></a>

### Atan

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算反正切。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | Double | 是 | 无，必须显式传入 | 要计算反正切的实数。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call Atan ( 0.5 ) )
```

<a id="math-a1a5936d3b0f"></a>

### Max

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：取两个数的较大者。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | Double | 是 | 无，必须显式传入 | 参与比较的第一个 Double 数值。 |
| Right | Double | 是 | 无，必须显式传入 | 参与比较的第二个 Double 数值。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call Max ( 2.0 3.0 ) )
```

<a id="math-dea79332147f"></a>

### Min

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：取两个数的较小者。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Left | Double | 是 | 无，必须显式传入 | 参与比较的第一个 Double 数值。 |
| Right | Double | 是 | 无，必须显式传入 | 参与比较的第二个 Double 数值。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call Min ( 2.0 3.0 ) )
```

<a id="math-7e2131ab7c50"></a>

### sqrt

**适用范围：** 适用于本站标准输入输出程序；具体输入和资源限制另计。

用途：计算平方根。

参数：
| 参数 | 类型 | 必填 | 默认值 | 含义 |
| --- | --- | --- | --- | --- |
| Value | Double | 是 | 无，必须显式传入 | 要开平方的非负数。 |


返回值：Double。计算所得 Double；反三角函数返回弧度。无效域可能产生 NaN，而不一定抛出 Error。


完整示例：
```verysh
Prefix
Do Call Load ( & "io" )
Do Call Load ( & "math" )
Do Call EchoLine ( $ Call sqrt ( 9.0 ) )
```

## 来源与同步

基础语法与函数说明来自以下 VerySH 自身文档文件；不是从 Python/C++ 文档推测接口。生成工具为 `deploy/verysh/build_docs.py`。

- `syntax/documentation.verysh` · SHA-256 `4ef985e0f58ffcab3516d0580b68bad7a386a44b699ad3a1a8333f9e9966f22d`
- `syntax/runtime.documentation.verysh` · SHA-256 `cba4dca66a78235eeabfb0d709a40039f6e41ff6369e9ed2ffb3c6f6fe86776f`
- `lib/io/documentation.verysh` · SHA-256 `123445b37c21879c0fc0354aa768362f270b55f5e6f862cbb9393fc36385f656`
- `lib/math/documentation.verysh` · SHA-256 `6caf048e56a6cb0ee825c5a1a4ca5080770ea7d91ab01d51048f194b3638c7b5`
