如果执行达到程序的限制,Befunge会发生什么?

时间:2012-07-19 13:45:32

标签: esoteric-languages befunge

我找不到这个问题的答案......是否存在“周期性边界条件”?即在对面的网站上继续执行吗?或者执行离开程序是非法的吗?

1 个答案:

答案 0 :(得分:3)

来自http://en.wikipedia.org/wiki/Befunge

  

Befunge-93规范将每个有效程序通过25个指令垂直限制为80个指令的网格。超过这些限制的程序执行“环绕”到网格另一侧的相应点;一个Befunge程序在拓扑上相当于一个圆环。

所以,对于“经典”的Befunge,是的,它包装。但后来的发展并没有那么简单。

  

由于Befunge-93程序只能有一个堆栈并且其存储阵列有限,因此与大多数机器语言不同,Befunge-93语言不是Turing-complete(但是,已经证明Befunge-93是图灵完成无限堆栈字大小。)[3]后来的Funge-98规范通过删除程序的大小限制来提供图灵完备性; Funge-98指令指针的移动不是绕着一个固定的极限环绕,而是跟随一个名为“Lahey-space”的模型,它的发源人Chris Lahey。在这个模型中,网格在包裹方面的行为类似于有限大小的圆环,同时仍允许自身无限延伸。