在发现Boost预处理器的功能后,我发现自己在想:C99预处理器Turing是否完整?
如果没有,缺少什么不符合资格?
在他的常见问题解答中,Bjarne Stroustrup说:
为了构建[Cfront,第一个C++编译器],我首先使用C来编写"C with Classes"-to-C预处理器."C with Classes"是C方言,成为C++的直接祖先......然后我在"C with Classes"中编写了Cfront的第一个版本.
当我读到这篇文章时,它引起了我对C预处理器的兴趣.我已经看到它的宏功能适合于简化常用表达式,但没有想到它能够在我想要将类带到C的级别上显着添加语法和语义.
所以现在我有些疑问:
是否还有其他一些从C语言引导语言的方法?
Stroustrup原创作品的来源是否随处可见?
我在哪里可以了解更多关于利用这种技术的具体细节?
这种方法的长度/限制是多少?比方说,可以创建一组预处理器宏,让某人写一些显着的Lisp/Scheme之类的东西吗?