除了C或C++,Native Client (NaCl)程序可以用其他语言编写吗?
有没有可能用Python或Go写一个本地客户端应用,然后让它在浏览器里运行呢?
4 个回答
6
NaCl 从 Go 1.3 开始再次得到支持。
详细信息请查看 Golang 1.3 发布说明。
关于 Go 1.2 的过时回答:
据说 NaCl 会在 Go 1.3 中得到支持:
以下是来自 Go 1.3 原生客户端支持 文档的引用:
Go 1.3 将支持在 Google 的 SFI(安全功能接口)基础的执行沙箱中运行命令行程序。
以下是来自 Go 博客:Go Playground 内部 的引用:
原生客户端(或称 "NaCl")是 Google 开发的一项技术,允许在网页浏览器中安全地执行 x86 程序。
(这个特殊的工具链将在 Go 1.3 中合并到核心中。想了解更多,可以阅读设计文档。如果你想在此之前尝试 NaCl,可以查看一个包含所有更改的分支。)
查看 Go 1.3 NACL 分支。
6
从架构上来说,这是可行的,但目前的开发工具包(SDK)似乎只支持C/C++的工具链。它们有一个Python的交互式环境,可以在浏览器中使用(里面包含了标准库和sqlite)。
8
之前,Go语言可以编译成NaCl(即“网络应用程序二进制插件”),但因为NaCl一直在变化,所以Go语言决定不再支持它。如果NaCl将来稳定下来,Go可能会重新支持它。