Join Nostr
2026-10-02 14:21:34 UTC

yfaming on Nostr: 越来越觉得 Scheme ...

越来越觉得 Scheme 挺有意思。现在,我也能写出令人畏惧的代码了。😂

用宏和 call/cc 实现 while 循环。

是的,Scheme 本身不支持循环,只有递归。但是,有了宏让你自定义语法,有 call/cc 让你任意跳转,手搓一个循环就不成问题了。

这个 while 循环,调用时得带着 `(break continue)` 很是碍眼。这是 syntax-rules 卫生宏的限制(为了你好😂)。

可以改用 syntax-case 来实现这个宏,并去掉碍眼的地方,但我现在还不会 syntax-case。