Implementation Strategies for Mutable Value Semantics
Val | The Val Programming Language
Subscripts - Language tour
これどれくらいうまく機能するんだろう。あと肝心の subscript
のセマンティクスが分からない。たとえば
subscript foo(_ x: inout Int, _ y: inout Int): Int {
inout { &x }
}
public fun main() {
var (x, y) = (1, 2)
inout z = foo[&x, &y]
print(y) // compile error?
&z += 2
}
こういうのはエラーなのか、それとも yield
の時点で生存していなかったらエラーにはならないのか。
Understanding Subscripts · val-lang · Discussion #739 · GitHub
Subscript and more complex objects · val-lang · Discussion #749 · GitHub
んんんんこれは lifetime annotation に比べてシンプルになっているの?