c++ - C/C++ 有哪些图灵完备的宏语言

标签 c++ c compiler-construction macros

序言

Lispers 声称作为对更多“主流”语言的奖励的主要观点之一是宏语言实际上是图灵完备的(我不记得这是 On Lisp 中的 Paul Graham 还是是 Conrad Barski 在 Lisp 的土地)1 中,至少对于局外人来说,这似乎是真的——C/C++ 中的预处理器指令似乎不是图灵完备(老实说,它们更像是一种注释语法)。

现在……问题

  1. 这是一个准确的评估吗?我只接触过 C,这让我觉得又是 Lispers 过于热心的一点
  2. 有没有值得注意的图灵完备宏语言(针对 C/C++)?
    • 是否有任何值得在未来寻找的正在进行或失败的尝试?
    • 我听说 Python 现在可以作为编译 C/C++ 的主干(意味着 Python 可以用来编写宏),但我还没有看到这方面的证实。是真的吗?

(我不会问诸如“什么是最好的......”之类的意见问题)

1。顺便说一句,这两本书都是非常好的书,只是说说而已

最佳答案

C 宏实际上是图灵完备的,如果处理不止一次。查看this related question特别是 Turing machine implementation链接到已接受的答案。

但是,是的,这是作弊。那里使用的解决方案强烈暗示 C 宏实际上不是图灵完备的。

关于c++ - C/C++ 有哪些图灵完备的宏语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7321144/

相关文章:

c++ - C++ 中 std::cout 的奇怪行为

delphi - 了解代码是使用 Lazarus 还是 Delphi 编译的

c - mmap: map_anonymous 为什么它给 SIGSEGV?

c - c中的数组名到底是什么?

java - Java 编译器是否会针对手动重载决议优化远离类型转换?

parsing - LL1首先并遵循设置规则

c++ - 带有Visual Studio Code的FLTK库

c# - C#/Unity3D中的分段线性整数曲线插值

c++ - 在用 C++ 编写的解释器中处理内置函数的好方法是什么?

c - SDL 事件内存泄漏