2次元座標ベクトルの単純な表現を探しています。私の最初のアイデアは単純な(c, c)
タプルでしたが、これは私のニーズには合いません。
これは私が望むものです:
- Functor と Applicative のインスタンス
- 同じセマンティクスを持つ異なるタイプを持つ機能 (例:
ScreenCoord
andGameCoord
)。 - 単純なデータ コンストラクター (例:
ScreenCoord c c
) - に汎用コードを書き込む機能
Coord
。
これを行う方法がわかりません。私が試したことはすべてinstance
、個別の型を取得するためにコードを複製する必要があったか、ScreenCoord (Coord c c)
不要と思われるような長いデータ コンストラクターを持っていました。
ここで理想的な表現は何でしょうか?