program-in-chinese / overview

中文编程的历史、现状和展望。issue 中进行相关问题的讨论.
https://zhuanlan.zhihu.com/codeInChinese
GNU General Public License v3.0
383 stars 34 forks source link

Halting Problem #106

Closed zaoqi-unsafe closed 5 years ago

zaoqi-unsafe commented 5 years ago

我避免了这个问题,但产生的问题难以解决。 昨日我描述为(miniKanre/run*o q (evalo env code q) '())

nobodxbodon commented 5 years ago

停机问题历史悠久. 相关论文也是汗牛充栋. 如有参考请分享一下出处? 或者尽量用中文详述你的思路?

zaoqi-unsafe commented 5 years ago

允许分步地把算不出值的东西替换为错误。替换的算法还没有,可能用一个自动的proof prover或proof sarcher可以解决。 这会导致结果可以有很多种,等能被接受的矛盾。

zaoqi-unsafe commented 5 years ago

这是zaoqi的unsafe账号。我不只为了中文而实现一些语言。

nobodxbodon commented 5 years ago

允许分步地把算不出值的东西替换为错误

如何判断是“算不出值”还只是需要花太长时间?

bctnry commented 5 years ago

停机问题不可解,这是已经被证明了的。

zaoqi commented 5 years ago

我我知道。我说"避免",不是解决

zaoqi commented 5 years ago

允许分步地把算不出值的东西替换为错误

如何判断是“算不出值”还只是需要花太长时间?

可能可以尝试证明某个东西eval会后不能是任何值。

zaoqi commented 5 years ago

避免这个问题会改变语言的定义。这个问题确实是不能解决,但好像能避免。