异步Rust驱动的Scheme编译器:scheme-rs项目初探

2025-02-18

作者Matthew Plant介绍了他的Scheme实现项目scheme-rs,该项目旨在利用异步Rust的优势,解决其编译速度慢和调试困难的问题。scheme-rs采用R6RS标准,并提供与异步Rust的无缝互操作性,方便开发者进行代码粘合和调试。作者还展望了未来基于scheme-rs的Gouki语言,该语言将结合Scheme的宏系统和Rust的类型系统,提供更强大的编程体验。目前scheme-rs虽然仍在开发中,但核心功能已实现,作者计划未来完善其内置函数和优化编译性能。

阅读更多
开发

并发循环垃圾收集:Rust 实现 Scheme 的垃圾回收智能指针

2024-12-13

本文介绍了如何在 Rust 中实现一个并发循环垃圾收集器,用于 Scheme 解释器中的垃圾回收智能指针 Gc。Gc 类似于 Arc>,支持内部可变性、克隆和跨线程发送。文章详细讲解了 Gc 的实现,包括线程安全内部可变性、使用信号量和读写锁的实现,以及基于 Bacon 和 Rajan 算法的并发循环垃圾收集的实现细节,包括追踪特性、周期检测和处理并发修改的机制。

阅读更多
开发