2024-06-24 / scala 何で Scala 3 をそんなに推すのかと聞かれることがあるので、リスト形式で書き出してみた。順は特に無し。これは僕が Scala 3 をどう書いているかとか、将来どう書きたいのかみたいな個人的な好みに基づいているので、それは注意してほしい。 1. enum (と GADT) Scala 3 で enum が追加され、これは case class のアップグレード版だと考えることができる。ボーナスとして、これは GADT も扱うことができる。 case に関する備考: 一旦 Scala 2 に戻るが、case class の case がどこから来たのか考察した人はいるのだろうか? 一つの説としては、case は C 言語とか Java の switch 文の流れをくんでいて、既に予約語なのでそれを使ったと考えることもできる。 もう1つの由来として僕が