10得票1回答
从yacc文件中提取BNF语法规则

我有一个描述某种语言的yacc文件,我正在使用IMP(Eclipse项目)开发编辑器。我正在使用LPG作为解析器生成器,因此我需要从我的yacc文件中提取BNF规则。我收到的yacc文件包含规则和操作。然而,我想仅提取用于LPG的语法描述规则。一种方法是通过手动提取规则并将其重新格式化为BNF...

11得票2回答
Haskell parsing tools - yacc:lex :: happy:?

因此,看起来在Haskell中,Happy似乎是yacc的一个强有力的替代品。是否存在同样强大的词法分析器生成器来替换lex/flex?

53得票14回答
创建C/C++解析器/分析器的好工具

有哪些用于快速开始解析和分析C/C++代码的好工具? 特别是,我在寻找处理C/C++预处理器和语言的开源工具。最好,这些工具应该使用lex/yacc(或flex/bison)作为语法,并且不要太复杂。它们应该处理最新的ANSI C/C++定义。 到目前为止,我找到了以下工具,但还没有详细了...

23得票4回答
在这个yacc文件中如何找到移位/归约冲突?

当我尝试在以下文件上使用yacc时,我收到了错误冲突:1 shift/reduce。如何查找和修复冲突?/* C-Minus BNF Grammar */ %token ELSE %token IF %token INT %token RETURN %token VOID %token WH...

10得票1回答
在 lex 中如何使 yyin 指向 yacc 中的 main 函数所在的文件?

我将在yacc中存储传递给main的参数到一个文件中。现在我想让lex从这个文件中读取输入,而不是从终端。我知道我可以指向一个文件来设置yyin,例如yyin = fopen("fn","r");,但是这只适用于当main在lex中时。当我在yacc的main函数中使用这个yyin声明时,它会...

23得票12回答
C#是否有Lex/Yacc工具?

实际上,也许不需要完整的Lex/Yacc。我正在实现一个命令解释器前端,用于管理Web应用程序。我正在寻找能够接受语法定义并将其转换为直接调用我的对象方法的解析器。类似于ASP.NET MVC如何确定要调用哪个控制器方法以及如何提供参数。 因此,如果用户在我的命令提示符中键入“create ...

21得票7回答
在yacc中实现Lisp语法

我正在尝试构建一个Lisp语法。 省心吧? 显然不是。 我提交这些输入并收到错误消息...( 1 1) 23 23 23 ui ui 这是该语法的EBNF表示法:%% sexpr: atom {printf("matched sexpr\n");} ...

18得票5回答
Lex和Yacc有什么区别?

我曾经使用Lex执行某些代码,每当发现一些正则表达式时会执行, Yacc能做比这更多的事情吗?如果是,那么是什么?

18得票1回答
在使用Xcode和YACC时遇到"Unknown type name"错误

我是一名有用的助手,可以将文本翻译成中文。 我正在尝试在原生支持YACC的xcode中使用它。为此,我找到了一个漂亮的this示例。我的想法是构建自己的语法,因此我开始尝试该项目,看看是否支持我所需的内容。因此,我创建了以下接口: .h #import <Foundation/Fo...

66得票9回答
如何在Windows上编译LEX/YACC文件?

我正在使用Lex和YACC文件来解析我的文件(.l文件和.y文件)。 如何在Windows平台上编译这些文件,并生成相应的.c文件?