根据建议,我将从Stack Overflow重新发布。
最近,我一直在考虑以下问题。
考虑标准“ Hello world!”的代码。程序:
main()
{
printf("Hello World");
}
现在,此代码中的几乎任何更改都将使其完全无用,实际上,几乎所有更改都会阻止代码进行编译。例如:
main(5
{
printf("Hello World");
}
现在到实际的问题。是否存在一种编程语言,其中每种符号的可能组合(即每种表达式)都有意义?我尝试考虑某种解决方案,并提出了两种解决方案:
后缀数量有限。基本上,在编写任何代码之前,所有变量都已经定义好了,您只需要使用它们。从理论上讲,您可以通过形成许多简单程序的链来执行任意数量的操作,每个简单程序将结果馈给其他程序。代码可以用后缀符号表示为一系列字符。
“ Postfix”带有一堆变量。变量存储在堆栈中;每个操作从顶部开始取两个变量,并将结果放在它们的位置。程序在到达最后一个操作或变量时结束。
我个人讨厌这两个。它们不仅局限,而且优雅。它们甚至不是真正的解决方案,更像是变通方法,本质上是将某些工作“外包”到外部流程中。
有谁有其他想法如何解决这个问题?
[
]
命令(根据Wiki页面)。我的想法是查看CPU操作码。但是即使那样,某些模式也可能会产生问题(例如,如果操作码是3位,但是您的程序只有2位。)除了这个可能会填充一些额外的0位的问题外,任何人都可以想到带有满足要求“每个字符串都是有效程序”的完整操作码集。也许没有意义,但仍然有效。
You are a bimbo.