2
A
回答
0
在C中,你的堆栈只不过是一系列的内存指针,告诉你当你离开时你在哪里。
在Scheme中,因为所有东西都是列表,所以你只是向上移动一个列表。你可以看看它,就像你的程序是堆栈。
0
的基本区别在于,在方案(除了别的以外)的堆叠可以是的当前状态/是第一类对象。你可以(例如)创建一个保存整个堆栈状态的变量。然后,您可以使用该延续从相同的起始状态调用不同的功能,也可以像正常列表一样走过“堆栈”的(方案视图)。
4
方案支持构建呼叫与电流延续(在R5RS读到它)。该构造可以用来返回到前一个继续。这意味着激活记录不再构成堆栈。相反,激活记录形成一棵树(请注意,堆栈是树的特殊形式)。为了得到延续概念的感觉,我可以推荐
丹尼尔P.弗里德曼。 “继续的应用:受邀教程”。 1988年编程语言原理(POPL88)。 1988年1月 http://www.cs.indiana.edu/hyplan/dfried/appcont.pdf
如果你勾搭上延续,那么你会发现许多有趣的论文在这里: http://library.readscheme.org/page6.html
相关问题
- 1. Scheme Lambda?它是什么?
- 2. STACK和TOP_STACK有什么区别?
- 3. 什么使Ometa特别?
- 4. 你用Scheme Scheme宏做了些什么?
- 5. Scheme中的变异是什么?
- 6. Lisp/Scheme中的'(撇号)是什么?
- 7. 什么是\ 003特别的?
- 8. widcomm stack - 如何使用它?
- 9. 在Scheme中,“set!”是什么意思?
- 10. 为什么在Scheme中不评估?
- 11. 为什么我们特别使用JMS?
- 12. Scheme,SICP,R5RS,为什么延迟不是特殊形式?
- 13. hibernate中cascade和inverse有什么区别,它们用于什么?
- 14. 为什么Heroku Stack Traces指示Ruby 1.9.1正在使用中?
- 15. 有什么特别的:conditions => [a_field IN(..,..,..)]?
- 16. ashmem有什么特别的权力?
- 17. 安装Typesafe Stack 2.0时``g8`做什么
- 18. 我在做什么错在Scheme?
- 19. Stack Overflow真的使用了什么OpenID解决方案?
- 20. 为什么jQuery的添加一个类的图像whenI点击它,即使我没有特别要求它?
- 21. 如果有的话,Scheme中的letrec定义有什么错误?
- 22. 有什么特别的使用最小高度的百分比?
- 23. 流的含义是什么?它有什么特点?
- 24. 是什么山和它的特点是什么?
- 25. 在UINavigationController Stack中显示特定视图
- 26. 关闭有什么特别之处?
- 27. Indexhibit有什么特别之处?
- 28. const @“SomeString”有什么特别之处?
- 29. 布尔值是什么特别?
- 30. 为什么(为getpagesize() - 1)特别?