Scheme 的正式语法使用 BNF 表述。非终结符使用尖括号表示。非终结符不区分大小写。
语法中所有的空字符只是为表述清晰而用。<Empty>
表示空字符串。
使用了下列 BNF 扩展以使语法描述更为精炼:<thing>*
表示<thing>
出现零或多次,<thing>+
表示<thing>
至少出现一次。
一些非终结符使用名字指代对应的 Unicode标量值
名字表示 | Unicode标量值值表示 |
---|---|
<character tabulation> |
<U+0009> |
<linefeed> |
<U+000A> |
<carriage return> |
<U+000D> |
<line tabulation> |
<U+000B> |
<form feed> |
<U+000C> |
<carriage return> |
<U+000D> |
<space> |
<U+0020> |
<next line> |
<U+0085> |
<line separator> |
<U+2028> |
<paragraph separator> |
<U+2029> |