第 2 章
语言基础
变量、值、函数、条件、循环和作用域。
动态值模型
HHY 是动态类型语言,运行时值包括 Null、Bool、Int、Float、String、List、Map、Range、DateTime、Path、Duration、Bytes、Percent、Result、Stream 以及系统对象。
- let 声明不可重新赋值的绑定。
- let mut 声明可重新赋值的绑定。
- 块、函数和模块拥有词法作用域。
- 集合更新返回新值,不提供原地修改 API。
函数与控制流
fn summarize(items) {
let mut total = 0
for item in items {
if item.enabled {
total = total + item.score
}
}
return total
}
let users = [
{ name: "Ada", enabled: true, score: 98 },
{ name: "Linus", enabled: false, score: 86 }
]
summarize(users) |> print函数按值接收参数并支持闭包。V1.0 不提供重载、泛型或默认参数。
