次のようにカスタム データ型を指定したいと思います。
data Colour = Red | Green | Blue deriving (Show, Eq, Enum)
data Geometry = Star | Square deriving (Show, Eq, Enum)
data Shape = Shp {colour :: Colour, geom :: Geometry} deriving (Show, Eq, Enum)
では、色を常に指定する必要がない場合はどうでしょうか。これは正しい方法ですか?
data Shape = Shp {colour :: Maybe Colour, geom :: Geometry} deriving (Show, Eq, Enum)
これは Haskell で行うべき方法ですか? これの代替案と欠点はありますか?これまでのところ、ものはコンパイルされていますが、私は学習曲線の始まりにあり、フォローアップ機能がこの状況にどのように対処するかを示すことなく、これが使用されている場所を 1 つだけ見つけました。
たとえば、色などを介して値にアクセスしたり、Show 関数を使用すると、多くの「Just Red」などになります。