Mos*_*afa 152
不,Go不提供REPL.
但是,如前所述,Go Playground(这是新的URL)非常方便.Go Authors也在考虑为其添加功能丰富的编辑器.
如果您想要本地的东西,请考虑安装hsandbox.简单地运行它将hsandbox go拆分终端屏幕(带screen),您可以在顶部编写代码,并在每次保存时查看底部的执行输出.
有一个gotry标准去命令,用于计算表达式(使用可选的包名)中,并且可以像运行gotry 1+2,并gotry fmt 'Println("hello")'从壳.它已不再可用,因为实际使用它的人并不多.
我还看到了为Go构建REPL的第三方项目,但现在我只能找到其中两个的链接:igo和go-repl.它们的工作情况我不知道.
我的两分钱:编译速度使得为Go编写REPL成为可能,因为它也有助于构建这里提到的工具,但同样的速度使得REPL不那么必要.每次我想在Go中测试一些我无法在Playground中运行的东西时,我打开一个简单的.go文件并开始编码并简单地运行代码.当goGo 1中的命令使单命令构建过程成为可能并且更容易时,这将更加容易.
更新: Go添加go命令的最新每周版本,可用于非常轻松地构建文件:编写prog.go文件并运行go build prog.go && ./prog
更新2:使用Go 1,您可以直接运行go程序go run filename.go
更新3:这gore是一个看似有趣的新项目.
您还有一个名为Gore来自Sriram Srinivasan的最近(2013年3月)项目,该项目非常有用:
gore是golang代码的命令行评估程序 - 如果你愿意的话,没有循环的REPL.
它是go游乐场的替代品,同时更容易交互式地尝试一些代码:gore自动提供锅炉板代码,例如导入和包声明以及主函数包装器.
此外,由于它在您自己的计算机上运行,因此在安全方面不会拒绝任何代码(与操场的安全沙盒模式不同).
你试过Go Playground吗?
关于Go Playground
Go Playground是一个在golang.org服务器上运行的Web服务.该服务接收Go程序,编译,链接并在沙箱中运行程序,然后返回输出.
如果您是 Vim 用户,vim-go 插件 ( https://github.com/fatih/vim-go ) 提供了一个命令 (GoRun) 来运行和打印当前缓冲区的输出。您仍然需要包含主 Go 文件的所有样板代码,但它仍然提供了一种在本地环境中快速测试代码片段的便捷方法。

HTH