莱斯定理
学习形式语言自动机这课时花了很久才理解莱斯定理(Rice's Theorem)。懂了以后发现,其实就是之前对着书瞎想的时候,没先把全局要做的事情理清楚,这个定理其实并不复杂。这篇带了一些偷懒(省略)的文章是我对莱斯定理的笔记。
Continue reading...Rust 闭包笔记
近日在学习 Rust 语言。Rust 语言的闭包设计非常有趣,一方面,它看起来非常复杂,为了支持闭包设计了三种不同的 trait,Fn
、FnMut
和 FnOnce
;一方面其设计又透露出了语言设计中闭包的本质。通过考察 Rust 闭包的设计,我们能更好的理解闭包到底是什么,在拥有生存期和借用检查的语言 Rust 中,闭包如何工作。
本文将在 Rust 下实现一个能够阐述闭包工作原理的朴素版闭包(也是一个 Boxed Closure)。并在实现的基础上对 Rust 闭包作进一步探究。
Continue reading...