文字
解释器与CPS变换
CPSLISPInterpreter本文从乘积计算的简单问题出发,深入探讨了Racket中call/cc的实现原理和应用,揭示了续体编程的强大能力与控制流本质。
实现简易Lisp解释器
LISPInterpreter用Racket实现简易Lisp解释器:从eval到递归阶乘计算。
TypeScript小技巧(二)
TypeScript本文介绍了TypeScript中引入的using关键字和satisfies操作符的使用:using简化了资源管理,自动调用[Symbol.dispose]方法释放资源,而satisfies则用于确保对象符合特定类型,同时限制对象属性的扩展。
Android开发拾遗:回调转协程
AndroidKotlin本文介绍了如何使用Kotlin的suspendCancellableCoroutine将基于回调的Java SDK接口转换为协程风格的同步代码写法,以解决多层依赖关系下的回调地狱问题。
CPS变换浅析
CPSLISP本文介绍了CPS(Continuation-passing style)的基本概念,通过具体的代码示例解释了什么是continuation以及如何进行CPS变换。文章使用阶乘和斐波那契数列的实现来展示CPS变换的过程,并探讨了CPS变换在控制程序执行流程方面的作用。