在阅读了这个问题Is CSS turing complete?后 - 它收到了一些深思熟虑的简洁答案 - 这让我想知道: HTML图灵是否完整?
虽然简短的答案是明确的是或否,但请提供一个简短的描述或反例来证明HTML是否Turing Complete(显然不是两者都有)。关于其他版本的HTML的信息可能很有趣,但正确的答案应该回答HTML5。
答案 0 :(得分:15)
单独(没有CSS或JS),HTML(5或其他)不可能是Turing-complete,因为它不是机器。询问它是否是完全等同于询问苹果或橙子是图灵完整,还是采取更相关的例子,一本书。
HTML不是“运行”的东西。这是一种表现形式。这是一种格式。这是一种信息编码。它不是一台机器,它无法在图灵完整性或任何其他级别上自行计算任何东西。
答案 1 :(得分:3)
在我看来,状态和转换可以分别用页面和超链接表示为HTML。这样,就可以实现deterministic finite automata,其中点击链接在状态之间转换。例如,我实现了一些简单的DFA,here可以访问。
DFA比图灵机简单得多。为了实现更接近TM的功能,除基本状态/转换功能外,还需要一种涉及对内存进行读写的附加机制。但是,HTML似乎没有这种功能。因此,我想说HTML并不是图灵完备的,但是能够模拟DFA。
编辑:在撰写此答案时,我想起了视频On The Turing Completeness of PowerPoint。