こんにちは私はHaskellを初めて使用します。この質問が基本的なものである場合は申し訳ありませんが、ここで何が起こっているのかわかりません。Type MaybeIntから要素を定義したい
m :: Maybe Int
m = Just m | Nothing
しかし、エラーが発生します:
parse error on input `|'
|
3 | m = Just m | Nothing
| ^
Failed, no modules loaded.
なんでこんなことが起こっているの。
ステップバイステップで、データ型の定義を確認する必要があります。
data Maybe a = Nothing | Just a
次に、コンストラクターと呼ばれる2つの特別な関数があります。この例では、次のように使用できます。
m :: Maybe Int
m = Just 5
他のコンストラクターを使用した例:
nothingHere :: Maybe a
nothingHere = Nothing
独自のデータを作成したい場合は、次のようにする必要があります。
data MyMaybe a = None | Some a deriving Show
m :: MyMaybe Int
m = Some 5
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加