trait は当初 2008 年に PHP の言語開発者コミュニティへ提案され、長い議論期間を経て 2012 年リリースの PHP 5.4 で導入された機能です。 それから 10 年がたち、trait は「ちょっと試しに使ってみよう」というものから、各開発現場において使われる中で少しずつその立場を変えてきました。 さて、実際どのように変わったのでしょうか? 先日、今年に出る PHP 8.2 へ向けて言語機能追加の RFC を提出しました。PHP の trait で定数を定義できるようにするというものです。 静かな議論期間を経ての RFC の投票開始後、PHP の開発者向けメーリングリストから最初に得られたのは驚くべきリアクションで、要約すると次のようになります。 「trait は言語にとってまったく不要なものであり、使われるべきでないものを改善すべきではない」 続々と RFC に No の
![導入から 10 年、PHP の trait は滅びるべきなのか ーーその適切な使いどころと弱点、将来について](https://cdn-ak-scissors.b.st-hatena.com/image/square/cc75d1654cf90f8c4ae09e102ccb22454b2c4fa2/height=288;version=1;width=512/https%3A%2F%2Ffortee.jp%2Fphpcon-2022%2Fproposal%2Fog-image%2Fb85ca73f-6383-4485-b2ae-4ec3e0913e72.png)