请教:Racket/Scheme中Amb示例里的continuation工作机制
关于Racket/Scheme中Amb示例里Continuation的困惑
我刚入门Racket/Scheme里的continuation(延续),找到了Matt Mights的页面作为实用学习资源,大部分内容都能理解,但卡在了非确定性Amb示例那部分——完全搞不懂里面continuation的工作原理,对我来说这部分简直像“黑魔法”一样。
相关代码片段如下:
; current-continuation : -> continuation (define (current-continuation) (call-with-current-continuation (lambda (cc) (cc cc)))) ; fail-stack : list[continuation] (define fail-stack '()) ; fail : -> ... (define (fail) (if ...
内容的提问来源于stack exchange,提问作者Stefan Dorn
相关产品推荐
相关产品推荐

