データ型を制御して、入力されたデータが Haskell に存在するかどうかを判断できるのでしょうか?
例えば:
data Ruler =Ruler Length Price deriving(Eq,Show)
data Wallet = Wallet Colour Ruler [Pencil] deriving(Eq,Show)
data Pencil =Pencil Penciltype Colour Price deriving(Eq,Show)
data Colour =Black | Blue | Green | Red deriving(Eq,Show)
data Penciltype =Leadpencil | Pen | Fountainpen | Feltpen deriving(Eq,Show)
type Price =Double
type Length =Int
アイデアはありますか?
そのような関数を定義したい:
isRulerAvailable :: Wallet-> Bool
if Ruler is Available in Wallet then True
else False