mutable/vector 设计
职责
- 提供执行导向的
Vector[T],底层包装Array[T]。 - 支持直接索引读写,服务需要原地更新的工作负载。
- 保留不带
inplace后缀的代数辅助函数,让调用方也能选择返回新值的变换。 - 把
dot()这类标量归约和lin_comb(...)这类组合辅助函数留在可变包中。
不变量
*_inplace方法修改现有向量并返回Unit。map、缩放辅助函数、zip_with和矩阵转换辅助函数返回新值。- 在共享操作子集上,向量代数语义应与
@immut.Vector保持对齐。 dot()和lin_comb(...)这类对长度敏感的辅助函数会显式拒绝不一致的输入。