ご挨拶、私はHaskellを初めて使用しており、割り当てのデータ型を定義することに固執しています。Haskellでのデータ型の定義
「戦略」タイプを作成する必要があります。基本的には、それぞれ数値を表す1〜6文字の文字列で、9以上の値を文字(最大35個の異なる合計値)考えられる各値を表す補助型を定義し、それを使用して型を作成しようとしましたが、コードが機能していないため、アイデアがなくなりました。これは私がしようとしている定義です:
data Value = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'A' | 'B' |
'C' | 'D' | 'E' | 'F' | 'G' | 'I' |'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' |
'Q' |'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'Y' | 'X' | 'Z'
data Strategy = Value | Value:Value | Value:Value:Value |
Value:Value:Value:Value | Value:Value:Value:Value:Value |
Value:Value:Value:Value:Value:Value
は、値の種類が番号を受け付けていません、と戦略型「の一種は、」それはバストを行くされた後、第2のコンストラクタまで動作します。ご協力いただきありがとうございます!
...また別の話です。あなたはすぐに正しいコードで答えを得るだろうが、それを理解する必要がある!データ型は可能な値の列挙ではありません(実際には、より抽象的な観点からのものですが、このようにはうまく機能しません)。 – delnan
あなたの入力のおかげで、私はこれを理解する必要があります、実際には、私は(コンストラクタのいずれかのパラメータを持っていない限り、私はjavaで言うと列挙型を作成するデータ型を使用することができたという印象の下にあった。私は、戦略型で動作するいくつかの関数を定義しているので、値を操作できるようにするために「導出(Eq、Ord、Enum)」を使用できるようにすることも目的でした。 – user526861
データ型は、列挙に使用することができます(そして実際には) - あなたが言ったように、パラメータのないいくつかのコンストラクタ。 stdlibの実際の例: 'data IOMode = ReadMode | WriteMode | AppendMode | ReadWriteMode'である。あなたはデータ型について少し知っているようですね? – delnan