0

次の関数の入力引数をどのように記述しますか??

単語はそのような記号のリストであり、タイプは [Either sigma var] です。したがって、私の 2 番目の入力は単語であり、どこから始めればよいかわかりません。[Left sigma] や [Right var] は全体が単語のタイプなので、書くことはできないと思います。助けてください。または、それについて読める場所を教えてください :)

genstep :: CFG sigma var -> [Either sigma var] -> [[Either sigma var]]

ありがとう

4

1 に答える 1

2

ここから始めましょう。type の特定の値が与えられた場合CFG sigma var、2 番目の引数は、空であるか、最初の要素が aLeftであるか、最初の要素が a であるかの 3 つのいずれかになりRightます。

つまり、関数定義は

genstep :: CFG sigma var -> [Either sigma var] -> [[Either sigma var]]
genstep cfg []             = -- your definition here
genstep cfg (Left  s:rest) = -- your definition here
genstep cfg (Right v:rest) = -- your definition here

始めるにはそれで十分ですか?

于 2013-03-28T13:35:11.420 に答える