@msimoni:我一天内创建了这个,它有点像拼凑的语言,但确实有一些有趣的想法和结果:Idle…
摘要
一位开发者创建了 Idle,这是一个用于 WebAssembly GC 的静态类型、低级 Lisp,具有 O(1) 方法查找和从 Wasm 模块加载宏等有趣功能。
我一天内创建了这个,它有点像拼凑的语言,但确实有一些有趣的想法和结果:
Idle:一个用于 Wasm GC 的静态类型、低级 Lisp
- 一个简单的单继承对象系统,允许基于 Wasm GC 类型信息的 O(1) 方法查找。
- Lisp 语法与从 WebAssembly 模块加载的宏。宏接收和返回语法形式(conses)作为普通的 GC 对象。
- 对象系统和方法调用的静态类型检查。只有代码的子部分需要类型化,用户可以在其他地方使用完整的 .wat 语法。
在 V8 上,与成熟的编译器如 Guile 和 JS 相比,性能似乎很好,而且代码量很少。实现有灵感,但也不差。
由于这是工作进行中的,目前一篇由 clanker 写的文章将不得不作为替代,见下文。
查看缓存全文
缓存时间: 2026/08/25 18:08
我在一天内完成了这个项目,它算是个拼凑语言,但确实包含一些有趣的想法和成果:
Idle:一个用于 Wasm GC 的静态类型、底层“Lisp“语言
- 基于 Wasm GC 类型信息实现的简单单继承对象系统,支持 O(1) 方法查找
- Lisp 语法配合宏系统,宏从 WebAssembly 模块加载,接收和返回语法形式(conses)作为常规 GC 对象
- 对象系统和方法调用的静态类型检查,仅需在代码特定部分声明类型,其余部分可使用完整 .wat 语法
在 V8 引擎上,其性能相比 Guile 等成熟编译器及 JavaScript 表现良好,且代码量极少。实现得比较随性,但效果还算不错。
由于项目仍在开发中,目前只能提供一篇 AI 生成的文章概要,详见下文。
相似文章
@msimoni: 这表明通过一些非常简单的宏方法,WebAssembly 几乎是一个可以直接编写的、可识别的 Lisp。
文章探讨了如何利用类似 Lisp 的宏来改进 WebAssembly,使其语法更易于人类理解,并提及了 Joel Martin 此前用 JavaScript 实现的相关内容。
你这个周末打算做什么?
一位开发者分享了他这个周末的项目,即构建一种编译为WebAssembly的低级中缀语言,并提供了从上下文自动补全到前沿模型等AI编码工具的个人排名。
来自@msimoni:https://v8.dev/blog/wasm-speculative-optimizations…
V8 已经实现了针对 WebAssembly 的投机性 call_indirect 内联和反优化支持,显著提升了性能,特别是对于 WasmGC 程序,在基准测试中速度提升高达 50%。
7行代码,3分钟:实现一种编程语言(2010)
本文介绍了一种基于 Lambda 演算的图灵完备函数式语言的极简 7 行解释器,展示了 eval/apply 设计模式。
JavaScript 精简
LispE 是 NAVER 开发的一个紧凑的 Lisp 方言,它结合了函数式和数组语言特性,并支持 PyTorch 和 llama.cpp 等 AI 库。