mvm - 一个快速的 Go 虚拟机

Lobsters Hottest 工具

摘要

mvm 是一个快速、可移植的 Go 虚拟机,支持直接从源码运行 Go 程序、嵌入 Go 解释器,并包含 REPL、调试器和标准库。

<p><a href="https://lobste.rs/s/fms0x0/mvm_fast_virtual_machine_for_go">评论</a></p>
查看原文
查看缓存全文

缓存时间: 2026/05/23 10:44

# mvm - 一个快速的 Go 虚拟机 来源:https://mvm.sh/ 直接从源码运行程序。嵌入完整的 Go 解释器。动态扩展你的应用。电池即插即用。 `` go install github.com/mvm-sh/mvm@latest `` ### 高速字节码虚拟机 便携式、基于栈的虚拟机,设计用于低开销。 ### 与 Go 兼容 旨在与 Go 完全兼容——相同的源码,无需编译器。 ### 可嵌入 可嵌入 Go、C 或其他宿主应用。参见示例。 ### REPL 与调试器 内置交互式 REPL、调试器和测试引擎。 ### 电池即插即用 单单一静态二进制文件,包含完整的标准库。 ## 快速体验 `` package main import "iter" func squares(n int) iter.Seq[int] { return func(yield func(int) bool) { for i := 1; i <= n; i++ { if !yield(i * i) { return } } } } func main() { sum := 0 for v := range squares(4) { sum += v } println(sum) } `` 在 playground 中打开 → (https://mvm.sh/playground/?sample=iter1) ## 运行 mvm 启动 REPL mvm _samples/fib.go 运行 Go 源码文件 mvm run -e "fmt.Println(1+2)" 评估内联表达式 mvm test ./pkg 运行包中的 `TestX` 函数 mvm help 列出子命令 ## 了解更多 - 文档 (https://github.com/mvm-sh/mvm/blob/main/docs/index.md) — 入口点 - 架构 (https://github.com/mvm-sh/mvm/blob/main/docs/architecture.md) — 管道、内存模型、关键设计决策 - 贡献指南 (https://github.com/mvm-sh/mvm/blob/main/CONTRIBUTING.md)

相似文章

在Proxmox VE中运行microVM的简便方法

Lobsters Hottest

介绍了pve-microvm,这是一个Debian软件包,它将QEMU的microvm机器类型集成到Proxmox VE中,实现了低于300毫秒的启动时间和硬件隔离,开销极小,支持多种客户操作系统。

Spindle的新microVM引擎

Lobsters Hottest

Spindle推出了一个新的microVM引擎,每个工作流在其独立的轻量级虚拟机中运行,支持NixOS配置、Docker构建以及缓存以实现快速后续运行。