首先,这是多语言的定义:
在计算环境中,多语言是一种以多种编程语言的有效形式编写的计算机程序或脚本,它独立于编译或解释它的编程语言执行相同的操作或输出。
但问题是:如果我有这样的程序:
#include <stdio.h>
int main() {
puts("Hello, world!");
return 0;
}
这是C.由于Objective-C(C之上的薄OO层)是C的严格超集,它也可以是具有相同输出的Objective-C,使其成为多语言。
但是当涉及到polyglots(使每个C程序成为多语言)时,严格的超集是否会被计算在内?
答案 0 :(得分:2)
严格来说,是的,这是C和Objective-C中的多语言。但它不会给任何人留下深刻的印象。
Polyglots在使用非常不同的语言时更有趣。如果你能在Python,Brainfuck,Perl和Befunge中使用它,它会稍微更令人印象深刻。