多くの場合、私はこのようなパターンの機能を持っている:ハスケル - パターンマッチングシンタックスシュガーと
f :: a -> b
f x = case x of
... -> g ...
... -> g ...
...
... -> g ...
where g = ...
ほとんどこの場合のシンタックスシュガーがあります:
f :: a -> b
f ... = g ...
f ... = g ...
...
f ... = g ...
残念ながら、私は」することができます私のwhere
を添付してください:私は明らかにnot in scope
の束を得るでしょう。 g
を別の関数にすることはできますが、それはうまくありません。私のモジュールの名前空間は、ユーティリティ関数で汚染されています。 回避策はありますか?
をエクスポートするために 'G'は、このように名前空間の汚染は、独自のモジュール*内*唯一の問題です。 –