我正在查看一些 SQLite 的语法图,想知道它们是否可以用来描述所有语言(如 Python、C++ 等)?
http://www.sqlite.org/lang_createtable.html
从几年前我参加的一些 CS 课程中,我记得可以由 DFA 描述的语言组以及其他不能描述的语言,但不记得很多细节,并且认为无论如何这可能有所不同。
任何清晰度将不胜感激。
我正在查看一些 SQLite 的语法图,想知道它们是否可以用来描述所有语言(如 Python、C++ 等)?
http://www.sqlite.org/lang_createtable.html
从几年前我参加的一些 CS 课程中,我记得可以由 DFA 描述的语言组以及其他不能描述的语言,但不记得很多细节,并且认为无论如何这可能有所不同。
任何清晰度将不胜感激。
您通常不会将它们称为“流程图”,而是称为“语法图”(就像您所做的那样)或“铁路图”。有关详细信息,请参阅Wikipedia 文章,并随时使用我的铁路图生成器从 EBNF 语法生成它们。
DFA 对应于常规文法,而 EBNF 和句法图描述上下文无关文法。这些是乔姆斯基层次结构的不同层次,这是对形式语法进行分类的基本框架。