Avatar
Avatar
yuki.noseda
個人的にはletになってることのデメリットがよくわかってないんですが、letで困ったらvarにすればいいというのは違うんですかね?(最初からvarにすればいいじゃんという議論ができるということは、そのコードに関与できる権限があるわけで、じゃあ必要になってからvarにすればいいじゃんというのでもいい気がするんですが) ライブラリとして公開するものを対象に議論してるという話であればなるべくvarにしたいというのはわかります(けど、その場合も自分としてはちゃんと自由に変更できるものだけがvarになってて欲しい気がします。使う側で使い方を気にしないといけないvarを使いたくないという意味合いで) (edited)
えっと、実際あった例としては、100個くらい(まあ多数の、という意味です)propertyのあるstructの1つだけ変えたい時に、letだったので100個引数のあるinitに99個同じ値を渡して1つだけ変えるというようなことがありましたね。 それで、そのstructはnominal tuple的な存在であったと。 (edited)