最近的 Posts
- Generalized Variable in Elisp
- 2025 年终总结
- 通过使用 Emacs 31 的 load-path-filter-function 加快 Emacs 在 Windows 下包加载的查找过程
- 一个 case-lambda 的 CL/Elisp 实现,以及对它的分析和改进
- 如何测试程序 — 改变认识与人工代码检查
- 在 Windows Terminal 的 Emacs 中规避中文环境下可能出现的全角符号导致的字符伪影问题
- 如何编写 Emacs Lisp 文档字符串
- 「翻译」The Expression Problem and its solutions
- ox-w3ctr 开发笔记 (5)
- ox-w3ctr 开发笔记 (4)
最近的 Republish
草,整理目标并不比写正经的博客简单。
Emacs
- 随着 Emacs 的不断进化,使用了 MPS GC 的 igc 分支最快可能会在 Emacs 32 中正式出现,也许是时候为老式 GC 写一份简单的记录了
- ☐ 学习 Mark-Sweep GC 算法,并结合 Emacs 的 alloc.c 进行介绍
- 我于 2026 年初完成了对 setf 之 CL 的 five gangs 与 elisp 的 high-order approach 的重构,目前还有两件事要做,以完成 Generalized Variable 三部曲:
- ☐ 完成对 GV 历史的考古
- ☐ 记录一些实用 GV 例子
- 在 igc: GC responsiveness 讨论中,Helmut Eller 使用滚动屏幕测试 GC 性能
- ☐ 总结 2025 年 8 月的所有讨论邮件,观察 IGC 相比 Emacs GC 的不同之处
- 为 Windows 平台上的 Emacs 添加
'alpha-background支持,即「背景透明」而非整个窗口的透明。具体讨论可以参考 emacs-devel 上的 The frame parameter 'alpha-background semms not work on MS-Windows。这一目标主要可以分解为以下两个子目标:- ☐ 学习和总结如何在 Windows 上为基本窗口实现透明和背景透明效果
- ☐ 完成
'alpha-background相关补丁,提交到 Emacs 主线并总结过程
- 参考 Org-mode 的 ox-html.el,完成对 ox-w3ctr 的重构,即代码整理以及编写对应文档。在开始 special-block 的重构之前,应首先完成如下两部分的学习和博客记录:
- ☑ 学习如何编写良好且可维护的 docstring,即文档字符串
- ☐ 学习如何使用 ERT 编写良好且可维护的单元测试,或称回归测试
- 完成「Emacs 的 treesit」的第二,第三部分:
- ☐ 第二部分应使用 MoonBit 这一语言的 tree-sitter parser 来介绍 Emacs treesit 的 API 使用,在现在 ,Emacs 的 treesit 已基本稳定
- ☐ 第三部分介绍如何使用 treesit 编写基本的 major-mode,并考虑介绍传统的实现方法来作为 fallback
- 完成对 Emacs Lisp Manual 核心部分的学习与总结,即大致记录到 Emacs Lisp Manual 的前二十章(大概是到 Reading and Printing Lisp Object,可以扩展到 Documentation),目前尚未完成的章节包括:
- ☐ 4 Strings and Characters
- ☐ 6 Sequences, Arrays, and Vectors
- ☐ 11 Control Structures
- ☐ 12 Variables
- ☐ 13 Functions
- ☐ 17 Byte Compilation, GNU Emacs Lisp Bytecode Reference Manual
- ☐ 18 Compilation of Lisp to Native Code
- 已存在的草稿
- ☐ 「Emacs 的模式匹配 —— pcase 与 cond*」,介绍 Emacs 中模式匹配的用法和实现
- ☐ 「Emacs 中的 Error Handling」,介绍如何在 Emacs 中做错误处理
- ☐ 「如何编译 Emacs」,介绍如何在不同操作系统上使用工具链获取完全功能的 Emacs
- ☐ 「Emacs 的 oclosure」,介绍如何使用
oclosure来创建可手动捕获的「开闭包」 - ☐ 「Emacs 与 OOP」,介绍 Emacs 中的 OOP 设施与它的 OOP 历史
- ☑ 邮件列表整理 — 加速 Emacs 包查找
- ☐ Emacs 与 Windows 上的 ConPTY
- ☐ 介绍如何使用 Emacs 29 内置的
sqlite3支持 - ☐ 介绍 Emacs 30 内置的简单补全前端
completion-preview
FP
- 25 年 8 我完成了 「翻译」The Expression Problem and its solutions,作者还有一篇
- 25 年年初我写了 CPS and Cont Monad — The Mother of all Monads,可以看作对 Monad 的入门理解。但这实际上是一篇未完成的博客,它至少还需要包括对以下内容的介绍:
- ☐ 简单 Monad,包括
Maybe,Either,List,State,Reader,Writer,IO,Free - ☐ 介绍 Monad Transformer
- ☐ 对 delimited continuation 的进一步介绍
- ☐ 介绍 effect 与 Koka
delimited continuation 可以参考以下链接
- ☐ 简单 Monad,包括
- 25 年年初我写了 「笔记」An Invitation to Applied Category Theory — Chapter 1,这本书是范畴论的入门级教程,目前还剩 2 到 7 章没有读和记笔记
- ☐ 「笔记」An Invitation to Applied Category Theory — Chapter 2
- 24 年 7 月我完成了「翻译」Programming Languages: Application and Interpretation [Evaluation],后续内容尚待翻译
- ☐ 完成 Syntactic Sugar 一章的翻译
Others
- ☐ 完成 Sakura, Moyu. -as the Night's, Reincarnation 的感想
LISP 系列
- 对于 Racket,我希望我能够使用它建立起一种标准编程语言模型,来让学习其他编程语言更加容易。
- 我希望有时间能读完以下书籍:
- ☐ Structure and Interpretation of Computer Programs,即《计算机程序的构造与解释》
- ☐ Essentials of Programming Language
- ☐ Beautiful Racket – an introduction to language-oriented programming using Racket
- ☐ Let Over Lambda: 50 Years of Lisp
- ☐ The Art of the Metaobject Protocol
JavaScript 与前端技术
- 读完两本分别介绍 JavaScript 和 TypeScript 的书:
- ☐ 完成一本 JavaScript 教程
- ☐ 完成一本 TypeScript 教程
- 我对 WASM 很感兴趣,这可能是因为 WASM 的 WAT 格式使用了 S-EXP,而且 WASM 有完成 JVM 当年没有完成的使命的可能性,即成为多语言的跨平台虚拟机(当然现在 JS 差不多已经是了)。对于 WASM,我可能会完成以下这几件事:
- ☐ 读一遍 WASM 标准
- ☐ 学会在浏览器中使用 WASM 模块
- ☐ 使用 WASM 实现 Scheme (可参考 PollRobots/scheme 和 schism 和 hoot)
- 最后是 WebGPU,我对计算机图形学有一定的兴趣,可能可以做这些事情:
- ☐ 读完 WGSL 和 WebGPU 的标准文档
- ☐ 为 WGSL 写一个 Emacs treesit 或普通 syntax-table 高亮
- ☐ 使用 WebGPU 或 DirectX12 完成 GAMES101
其他编程语言
- ☐ Haskell
- ☐ Scala3
- ☐ Koka
- ☐ Rust
- ☐ Zig
- ☐ Moonbit
- ☐ Swift
范畴论
OOP
「面向对象是如此的成功,以至于我们可能忘记了它本来的目的。」 — 沃·兹基硕得
当前广为流传的、以类(class)、继承(inheritance)和多态(polymorphism)为中心的面向对象编程(Object-Oriented Programming, OOP)范式,与其最初的、更为激进的目标发生了显著且影响深远的偏离。
我计划对 OOP 展开一些「研究」。
- ☐ 学会可持续性地整理资料
- ☐ 学点日语
- ☐ 学点基金知识和理财知识
ギャルゲー
- ☐ 灵感满溢的甜蜜创想
- 常轨脱离 Creative
- ハミダシクリエイティブ
- ☐ 交响乐之雨
- シンフォニック=レイン
- ☐ 苍之彼方四重奏
- 蒼の彼方のフォーリズム
- ☐ 突然之间发现我已恋上你
- いきなりあなたに恋している
- ☐ 不败世界与终焉之花
- 永不枯萎的世界与终结之花
- 枯れない世界と終わる花
- ☐ 鬼的捉迷藏
- 鬼ごっこ!
- ☐ rewrite
- ☐ Yumeutsutsu Re:Master
- ☐ 爱上火车
- まいてつ
- ☐ 近月少女的礼仪
- 月に寄りそう乙女の作法
- ☐ eden*
- ☐ Summer Pockets
- ☐ 秽翼的尤斯蒂娅
- 穢翼のユースティア
- ☐ よめがみ My Sweet Goddess!
- ☐ 琉璃交错
妹物语- ルリのかさね~いもうと物語り
アニメ
- ☐ 变态王子与不笑猫
- ☐ 我心中危险的东西
- ☐ 实况主的逃脱游戏
- ☐ 魔界天使加百列
- ☐ 爱丽丝和特雷斯的梦幻工厂
- ☐ 战 x 恋
- ☐ 公主闯天关
- ☐ 现世研二代目
- ☐ 七人魔法使
- ☐ 桃子男孩渡海而来
- ☐ 恋爱要在世界征服后
- ☐ 紅 Kure-nai【全 12 集】
- ☐ 漫画家与助手们
- ☐ 超元气三胞胎
- ☐ 未确定进行式
- ☐ 今日の5の2
- 猎户座
- 董地瓜
- emacs talk
- ⛤lazycat⛤
- 哲学的重建
- azu
- Computable Multiverse
- Hanyu – 行者无疆 始于足下
- 无处不在的小土
- alpha-beta-eta
- Karthinks
- public voi – karl-voit
- Living an Awesome Life – Sacha Chua
- matklad
- 王玄的博客 — 种野菜杂草的自留地,任君取用
- Blogs — 此地有野狗出没
- Laurence Tratt: Laurence Tratt
- Documentation System
- Ninputer | 装配脑袋
- CLSTY 的网络空间站
- 静かな森 - 致虚极,守静笃。
- Webpresence of Philip Kaludercic
- 新世界的大门
- UWTB
- Tony Garnock-Jones
- 绅士喵 — 做自己感兴趣的事
- Clean Rinse — Shampoo for your System
- Aleksandr Petrosyan
本博客以 emacs 相关内容为主,也有一些我比较感兴趣的东西。博文皆以 CC BY-SA 4.0 发布。如果你发现了文中的问题,可以通过 issue 告诉我,或是 yy@egh0bww1.com。
你可以添加 RSS 以订阅此博客,链接为:https://egh0bww1.com/rss.xml 。如果你也有 emacs 相关的博客,或者是非常有趣的东西,我很高兴把你的链接放在 FOLKS 里。
This blog primarily focuses on emacs-related content, with some other topics that I find interesting. All blog posts are published under CC-BY-SA 4.0. If you come across any issues in the articles, you can inform me through an issue or by emailing yy@egh0bww1.com.
You can add the RSS feed to subscribe to this blog. The link is https://egh0bww1.com/rss.xml. If you also have an emacs-related blog or something interesting, I would be happy to include your link in the FOLKS page.
include-yy