grammar

    0热度

    1回答

    所以我在研究上下文无关语法时遇到了这个问题,我不知道如何获得这个英语句子的生产规则。 语言L的定义如下: “{a,b} *上的所有奇数长度的字符串与 中间符号a”。

    2热度

    1回答

    我正在尝试创建一个语法。这是我的代码到目前为止: use Text::Table::Simple; # zef install Text::Table::Simple my $desc = q:to"FIN"; record person name string; age int; end-record FIN grammar rec { toke

    0热度

    1回答

    我有以下语法: E -> E+T | E-T | T T -> T*F | T/F | F F -> i | (E) 而这个字符串: (i+i)*i 什么是搞乱了我的我怎么会纳入(的)? 尝试: ë - >牛逼 T =的 左支行 - >的F - >我 中秋节分支= * 权支行T = F - >(E) - > E + T .....(E - > i,T - > i) 我不

    0热度

    1回答

    我试图解决这个问题,但我真的不知道如何开始。我希望得到一些帮助。 位运算符用于语言示于下表中的语法旁边。操作符和语法规则按照从高到低的顺序排列。字符a,b和c表示语言中的终端。 语法表: 表明语法是使用表达含糊:一个>> B^C 重写语法,以便它是明确的。

    0热度

    1回答

    只是问一个相当简单的问题,但我在谷歌的搜索是不成功的。我正在寻找一个编程元语言谁是完整的。简而言之,是否有任何其他编程语言(java,c,其他)可以表达的语言?包括所有可以在其他语言中找到的词汇和所有概念。如班级,功能,方法,线程等。 在此先感谢!

    0热度

    1回答

    我试图生成从上下文无关文法的句子随机生成时确定一组有效的下一个终端。在每个步骤中,根据与该问题无关的一些概率标准确定下一个要生成的非终端。我被卡住的地方是,如果给出一个语法和目前为止产生的部分语句,我如何根据语法确定下一步可以生成的非终端的集合? 下面是BNF的示例语法和部分产生。 <expr> ::= <term> "+" <expr> | <term> <term> ::= <term> "

    1热度

    1回答

    我有这2个平衡圆括号的明确语法。 S -> S(S) | epsilon 和 S -> (S)S | epsilon 他们是否相同呢?我一直在尝试一些随机输入,我认为它们是,但我不确定是否存在无法读取某个输入的情况。

    1热度

    1回答

    dict.update([other])说 更新用键/值对的字典从其他,覆盖现有的密钥。退货无。 update()接受另一个字典对象或键/值对的迭代(作为元组或其他长度为2的迭代)。如果指定了关键字参数,则字典随后会使用这些键/值对进行更新:d.update(red = 1,blue = 2)。 但 >>> {}.update(("key", "value")) Traceback (most

    0热度

    1回答

    为什么我必须在以下语法片段中明确使用$<nVal>4? 我以为%type <nVal> expr行会删除需要,所以我可以简单地把$4? 难道不可以使用expr的不同定义,以便我可以吗? %union { int nVal; char *pszVal; } %token <nVal> tkNUMBER %token <pszVal> tkIDENT %type <nV

    2热度

    1回答

    您能否构建一个与以下Python 2.7 grammar rules匹配的源代码的最小有效示例?有没有可能产生运行时错误? (1) atom: '[' [listmaker] ']' (2) listmaker: test list_for (3) list_for: 'for' exprlist 'in' testlist_safe (4) testlist_safe: old_t