不変
不変にも様々なものがある
readonly
推移性がない
struct自体はreadonlyでもそのフィールドが可変であるなど
aliasing problemの可能性がある
所有権
Immutable