## 主要特性
*点击了解更多。*
物理量纲作为类型
Numbat 拥有静态类型系统,其中物理量纲如 `Length` 和 `Time` 充当类型。
常量和函数的定义可以可选地包含类型注解,这些注解将在静态检查中强制执行。
如果未指定类型,它们将被推断(如截图中的 `Speed`、`Money` 和 `Frequency`)。
请参阅[这篇文章](https://numbat.dev/docs/advanced/type-system/)以了解更多关于 Numbat 类型系统的信息。
一等物理单位
Numbat 专注于带单位的计算。因此,单位被视为一等公民。它们可以
[以多种方式输入](https://numbat.dev/docs/basics/unit-notation/)(`km/h` 或 `kilometer/hour`、`GiB` 或
`gibibytes`、`°` 或 `degree`、`m²` 或 `m^2`)。
新单位可以[即时引入](https://numbat.dev/docs/advanced/unit-definitions/)(`unit pixel`)。
兼容的单位可以轻松[使用 `->` 运算符进行转换](https://numbat.dev/docs/basics/conversions/)(`30 km/h -> mph`、`1 mrad -> degree`、`5 in + 2 ft -> cm`、`27 weeks -> days`)。
单位表达式会使用各种启发式规则进行简化(`15 km/h * 30 min = 7.5 km`)。
全面的标准库
Numbat 的[标准库](https://numbat.dev/docs/prelude/)包含大量物理量纲和单位(SI、美制、英制、航海、天文、原子、核物理等)。
完整概览请参见[此参考页面](https://numbat.dev/docs/prelude/list-units/)。
它还包含许多[数学和物理常数](https://numbat.dev/docs/prelude/list-constants/),
以及一系列[预定义函数](https://numbat.dev/docs/prelude/functions/)。
严格语法
Numbat 的解析器从不对语法错误的输入“自作聪明”。
这意味着你要么会收到(描述性的)错误消息,要么可以信任计算结果。
出色的错误消息