<分区>
哪些模板引擎/模板语言是图灵完备的?到目前为止,我听说过这些:
- FreeMarker(用 java 实现)
- MovableTypes 模板语言(perl)
- xslt :-(
- Cheetah(Python 语言)
- 聪明(PHP)
还有其他的(特别是用 perl 实现的)吗?
Ps:不要浪费时间向我解释 MVC,以及为什么图灵完整模板不好,以及为什么这不是一个有用的比较点:)
<分区>
哪些模板引擎/模板语言是图灵完备的?到目前为止,我听说过这些:
还有其他的(特别是用 perl 实现的)吗?
Ps:不要浪费时间向我解释 MVC,以及为什么图灵完整模板不好,以及为什么这不是一个有用的比较点:)
最佳答案
Perl 的 Template::Toolkit允许 inlining of Perl如果设置了 EVAL_PERL 标志。在模板中,PERL 和 RAWPERL block 允许内联,在某种程度上(在 RAWPERL 的情况下)公开了内部结构,并且内联代码通过 eval()
(引用的 eval)进行评估。这提供了对 Perl 解释器的完全访问权限。
Perl 本身被认为有一个 Turing Complete grammar .因此,鉴于 Template::Toolkit 确实提供了对 Perl 本身的访问,模板系统继承了该特性。
虽然将 EVAL_PERL 设置为允许在模板中内联 Perl 被认为是一项高级(并且可能很少使用)的功能,但它适用于坚强的人(并且可能是理智的)。
关于python - 图灵完备模板引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6351765/