看看 Rakudo Perl6,我想知道是否有解析和词法分析的技术可以改变/扩展语言的语法,并且高效且不难实现。
最佳答案
看看 PEG。有些语言是基于 PEG ( http://en.wikipedia.org/wiki/Parsing_expression_grammar ) 的,它们是可扩展的,例如:
http://www.chrisseaton.com/katahdin/
http://www.meta-alternative.net/mbase.html
Perl5 和 Perl6 语法可以很容易地以 PEG 形式定义(我可能是错的,但当前的 Perl6 很可能是这样实现的)。
关于运行时语言更改的解析技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4301837/