文档 / 语言
EBNF
当前语法浓缩(用于对照,不是 parser 逐字表):
File = "@" PackagePath { CompileTag } { Import } { Decl } .
Import = [ Ident ] "#" Path .
ReturnStmt = "<<" [ Expr ] .
ThrowStmt = ">>" Expr .
ExitStmt = "<<<" Expr .
BreakStmt = "<-" .
ContinueStmt = "->" .
RangeOp = ":" . // [start, end)
XuStmt = "xu" QualifiedName "(" [ Args ] ")" .
Expr = … | Expr "or" "(" Ident ")" Block | Expr "or" ">>" .
PackagePath 使用斜杠路径,域名身份可用引号包围;域名中的点保留。导入别名写在 # 前,外部路径必须有别名。