GopherLua 是用 Go 语言编写的 Lua 5.1 的虚拟机和编译器。GopherLua 的目标和 Lua 相同 —— 成为一个支持可扩展语义的脚本语言,提供 Go API 可方便在 Go 应用中植入 Lua 脚本语言功能。
实际测试表明 GopherLua 的性能是其他同类实现的 20 倍。
示例代码:
import (
"github.com/yuin/gopher-lua"
)
L := lua.NewState()
defer L.Close()
if err := L.DoString(`print("hello")`); err != nil {
panic(err)
}
L := lua.NewState()
defer L.Close()
if err := L.DoFile("hello.lua"); err != nil {
panic(err)
}