涂糖霜还是蛋糕?— dthompson

主要观点

  • [Spring Lisp Game Jam 2024]结束,提交 48 款游戏创纪录,参与者相互玩和评分。
  • 发现构建 Lisp 游戏的两种元模式,适用于 Lisp 所有应用。
  • 介绍两种模式:“Lisp 作为糖霜”和“Lisp 作为蛋糕”。
  • 通过多个案例研究不同语言和库的“糖霜/蛋糕”特性。
  • 探讨“蛋糕/糖霜”频谱,承认蛋糕模式的局限性但认为有意义。
  • 以 Guix 等项目为例说明蛋糕模式的成功。

关键信息

  • Guile 提交最多,因 11 款为 Web 游戏用 Hoot 编译。
  • Fennel 是编译为 Lua 的 Lisp 较受欢迎。
  • S7 用于三款游戏,可能与后文相关。
  • “Lisp 作为糖霜”是在 C/Rust 等静态语言之上用 Lisp 脚本。
  • “Lisp 作为蛋糕”是用 Lisp 实现大部分软件栈。
  • 多个案例如 Fennel + love2d、S7 + raylib、Guile + Chickadee、Hoot + HTML5 canvas 展示不同模式。
  • 承认蛋糕模式局限性但认为有意义,以 Guix 等为例说明。

重要细节

  • 未将各种 Scheme 归为一类,因它们差异大。
  • Guile 最初用于 Emacs 化其他程序,如今最好用 Scheme 写程序。
  • Hoot 是 Scheme 到 WebAssembly 编译器,目标为 Wasm 2.0 有优势。
  • 不同项目在“糖霜/蛋糕”模式上的具体实现和特点。
  • 如 Guile + Chickadee 大部分用 Scheme 实现,突破 Guile 编译器和虚拟机限制。
  • 蛋糕模式在 Guix 等项目中的成功体现。
阅读 14
0 条评论