独自の Prelude モジュールを定義し、そのエクスポートを慎重に制御できることに気付きました。これは悪い習慣と見なされますか?
利点:
大規模なプロジェクトで「共通」モジュールを繰り返しインポートする必要はありません。
「インポートプレリュード隠し(キャッチ)」を書く必要はありません。
独自の Prelude モジュールを定義し、そのエクスポートを慎重に制御できることに気付きました。これは悪い習慣と見なされますか?
利点:
大規模なプロジェクトで「共通」モジュールを繰り返しインポートする必要はありません。
「インポートプレリュード隠し(キャッチ)」を書く必要はありません。
一般に、他の人が簡単に保守できない独自のイディオムでコードを作成することになるため、これは悪い考えです。
他の人とコミュニケーションをとるには、シンボルの共有言語が必要です。はPrelude
コア言語であるため、再定義する場合は混乱が予想されます。
この規則の例外は、組み込みのドメイン固有言語を開発する場合です。そこで、カスタム Prelude を作成することは完全に良い考えであり、そもそも Prelude (および組み込み構文) を再定義できる理由です。
必ず独自の追加モジュールを用意してください。ただし、Prelude をオーバーライドしないでください。