我正在考虑为自己的编译器使用GPL Bison语法。
语法会“感染”我的解析器,使其需要开源吗?
北美野牛的输入语法为GPL。
2
请说清楚。您是说语法(即Bison的输入)是GPL,还是因为它是GPL而担心使用Bison?
—
Craig
@Craig程序的输出通常不受生成该程序的程序的许可。但是,
bison
在其输出中包含大量在GPL下的代码,这意味着使用该代码的任何内容也将在GPL下...除非存在能够将bison用于非gpl程序的例外。
@MichaelT是的,但是如果他表示语法本身已包含在GPL中(例如,它取自GPL程序),则语法的GPL可能会使他的程序成为派生作品。需要澄清实际问题。
—
Craig
Bison生成用于LALR(1)语言的解析器。如果您的语言本质上是LALR(1),则其中可能存在一些相当严重的缺陷,使其难以使用以及难以解析。通过简化语言,您可能会获得更大的提升,从而可以为其编写简单的递归下降解析器(RDP)。与LALR(1)语法和解析操作相比,RDP往往更容易编写和维护。
—
John R. Strohm 2013年
为了澄清:我的意思是野牛的输入
—
Stasik 2013年