如何为以下函数编写输入参数?
一个单词是这样的符号列表,它的类型为[sigma var]。 所以,我的第二个输入将是一个单词,我不知道从哪里开始。 我想我不能写[Left sigma]或[right var]因为整个都是一个单词的类型.. 请帮帮我或者请指点我能读到的地方:)
genstep :: CFG sigma var -> [Either sigma var] -> [[Either sigma var]]
由于
答案 0 :(得分:2)
这是让你开始的事情。给定类型CFG sigma var
的特定值,第二个参数只能是三个中的一个 - 它是空的,或者第一个元素是Left
,或者第一个元素是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
这足以让你入门吗?