Chiba Logo CHIBA v0.6.13
CHIBA blog RSS feed
CHIBA / DOCS / LEVEL-1 SPEC

`:=` 与 Ref 相关语义

这里集中展示 CHIBA level-1 specification,覆盖 core language、control flow、memory、patterns、IR lowering 与 package system 等实现边界。

The docs surface keeps CHIBA level-1 specification pages browsable inside the site, with direct paths into language, control flow, memory, pattern, and lowering rules.

:= 与 Ref 相关语义

语法

:= 预留给引用单元或位置更新类语义。

语义

它更接近对 Ref[T] 或类似可写位置的赋值,而不是普通绑定。

level-1 规定 := 的结果值是右侧表达式的值。

因此:

x := y

在更新左侧位置之后,整个表达式求值为 y 的结果值。

这使 := 可以参与链式表达:

a := b := c

level-1 当前方向把 := 置于倒数第二弱优先级。

也就是说:

  • :=|> 更弱
  • := 只强于最外层的 = 绑定/定义语法

= 本身不作为普通 operator 进入表达式运算符体系。

:= 的链式写法按右结合理解:

a := (b := c)

Usage

cell := 1

let x = a := b := c

注释:第一行展示 := 用于更新位置,第二行展示它返回右值,因此可以参与链式表达。

边界

需要单独明确:

  • := 的左值集合
  • 与 record update 的职责边界
  • 左值求值与右结合更新的精确求值顺序