>>964
Rustのような「型の定義」と「型に対するインターフェースAの実装定義」と「型に対するインターフェースBの実装定義」が分かれてる言語では
「既存の型の定義」に手を入れずに後からインターフェースの追加が楽だよ

>>977
Rustはその「標準ライブラリの既存の型」や「他所のライブラリの既存の型」に対しても
「自分で定義した新たなインターフェース」のメソッド関数を自由に実装して生やすことができるよ

その上で既存の型の本来の設計を崩すことがないようにするために
Rustの『孤児ルール(orphan rule)』によって「対象の型」か「対象のインターフェース」どちらかは自分自身で定義したものである必要がある制限があるよ

さらに波及効果も限定的で
既存の型へ新たなメソッド関数が有効になるのは「新たなインターフェース」の利用を宣言したモジュール内のみに限定されるよ
つまりRustは利便性と安全性を両立させる形になっています