↑最近こちらに悩んでいます。感覚的には積極的にmix-in(と委譲)を使ったほうがモデリングしやすいのですが、もしかすると継承のほうが便利なケースがあるかも分かりません。それで以下の2つを調べていました。
- 「inheritance is not subtyping」問題
- Rustのtraitが導入されるまでの議論を追う(端的に言うとRustでなぜクラスの継承の機能が実装されなかったのか追う)
ところが、前者はきちんと追おうとすると型理論の話が分からないし、後者もGitHubのissueなどにあるんじゃないかと思ったのですが見つけられていません。一応それっぽい議論はあったのですが、こちらも「継承がないとGUIプログラミングきつくない?」「いやいやそんなことないよ」程度の内容に見えて、もう少し具体的じゃないときつい感じします。
一旦諦めて他のことやろうと思います。