不要发明另一种规则语言。
使用Python或使用其他一些已经调试和工作的现有语言,例如BPEL。
只需用Python编写规则,将其导入并执行即可。生活变得更简单,调试起来也容易得多,并且您实际上已经解决了实际的日志读取问题,而没有造成其他问题。
想象一下这种情况。您的程序中断。现在要么是规则解析,规则执行,要么是规则本身。您必须调试所有三个。如果您使用Python编写规则,那么规则就是那样。
“我认为很难将Python过滤到用户无法无意地使用一些不规则的疯狂行为的程度。”
这很大程度上是“我想编写一个编译器”参数。
1)您是主要用户。您将编写,调试和维护规则。真的有疯狂的程序员大军在做疯狂的事情吗?真?如果有任何潜在的疯狂用户,请 与他们交谈
。教他们。不要通过发明一种新的语言来对抗它们(然后您将不得不永远维护和调试它)。
2)这只是日志处理。 疯狂
没有真正的代价。没有人会用错误的日志处理来颠覆世界经济体系。不要将几十行Python放在1000行解释器上来完成小任务,以解释几十行某些规则语言。只需编写几十行Python。
只需尽可能快速,清晰地用Python编写它,然后继续进行下一个项目即可。



