标签: haskell code-generation
鉴于Perl 5不符合BNF,我对如何考虑这个问题感到茫然。有人可以提出一些建议让我以正确的方式考虑这个问题吗?
答案 0 :(得分:5)
取决于您想要生成的内容。
如果你希望生成的Perl代码符合BNF,那么你清楚地认为(正确地)有一个解决方案:构建一个对应于Perl片段的树,然后重新打印树。如果您坚持生成相同的语法(这可能由Perl模糊解释),这只会是一个问题。
您也可以简单地为Perl代码使用文本模板并填写插槽。如果您的代码生成器不必以复杂的方式组合,那么这也可以正常工作。