我用它构建了一个简单的可执行程序Go.
我已经将代码编译成静态二进制程序.
我想反编译输出二进制文件并获取Go源代码.
这可能吗?
我知道在Go中没有析构函数,因为从技术上讲没有类.因此,我initClass用来执行与构造函数相同的功能.但是,有没有办法在终止时创建一些模仿析构函数的东西,比如关闭文件?现在我只是打电话defer deinitClass,但这是相当hackish我认为一个糟糕的设计.什么是正确的方法?
我最近很乐意从坐标渲染图表和图表,我很着迷使用矩阵来转换坐标空间.
我已经能够成功地缩放和反转二维坐标空间,但现在我的胃口被激发了.:)
我在哪里可以获得关于矩阵,矩阵数学的清晰,信息丰富,(免费)的教育材料,特别是适用于二维和三维空间?
如何为Go源生成标签文件
在mac中,我安装了繁琐的ctags,并在源目录中尝试了以下命令
ctags -f gosource.tags -R `pwd`
Run Code Online (Sandbox Code Playgroud)
但是,它不考虑*.go文件.我必须使用-h选项吗?但是,根据手册,它不仅仅适用于头文件吗?
请给我正确的命令,以便我可以使用带有vim的标签文件.我也更喜欢绝对路径,以便我可以将文件保存在任何地方
谢谢.
编辑:我假设当前的ctags支持Go,请参阅http://groups.google.com/group/golang-nuts/browse_thread/thread/3a4848db231b02c9.
但是,http: //ctags.sourceforge.net/languages.html尚未列出.
我对Subversion和Subclipse都很陌生,并且看到一些问题让我相信更新头部和同步之间存在差异.具体来说,我发现当我尝试恢复(使用subclipse历史记录)时,我经常会收到一条消息,说"无法从路径自己的未来历史中反转合并范围,请先尝试更新".我的同步应该确保我在REPO的分支中拥有所有文件的"head"版本,但是执行"Update to head"确实解决了问题...那么是什么给出了?我试图检查SVN控制台,看看有什么变化,但它不是很冗长.
想法?
我有第二个问题,但我假设第一个问题的答案将会阐明它.如果你很好奇并有时间阅读,我也会打字.这是场景......我从"生产"标签中分支了所有文件,并开始处理我的项目.在几次提交之后,我检查一个已更改文件的历史记录,并注意到"粗体"版本(根据文档,这应该是头部)低于我的所有提交.就好像我拥有的不是头脑.但是头部只是该项目的最新版本吗?所以我错过了什么.
感谢您的回复,并花时间阅读本文!
我发现很多谈话都说Node.js因为回调地狱而糟糕,Go因为它的同步模型而很好.
我觉得Go也可以像Node.js一样回调,但是以同步的方式.因为我们可以传递匿名函数并做关闭事情
那么,为什么他们在回调视角中比较Go和Node.js就像Go不能成为回调地狱一样.
或者我误解了Go中回调和匿名函数的含义?
更新:Elixir并不慢,我的算法是.我的算法甚至不是苹果对比.有关Ruby和Go等效算法,请参阅下面的Roman答案.还要感谢José,我的慢速算法可以通过添加前缀MIX_ENV = prod来显着加快.我已经更新了问题中的统计数据.
原始问题: 我正在研究多种语言的Project Euler问题,只是为了了解语言的效率和速度.在问题#5中,我们被要求找到可被1到20的所有数字整除的最小正数.
我用多种语言实现了该解决方案.以下是统计数据:
为什么Elixir的表现如此之慢?我尝试在所有语言中使用相同的优化.警告:我是FP和Elixir新手.
我有什么办法可以改善Elixir的表现吗?如果您使用任何分析工具来找出更好的解决方案,请将它们包含在响应中吗?
在Go:
func problem005() int {
i := 20
outer:
for {
for j := 20; j > 0; j-- {
if i%j != 0 {
i = i + 20
continue outer
}
}
return i
}
panic("Should have found a solution by now")
}
Run Code Online (Sandbox Code Playgroud)
在Ruby中:
def self.problem005
divisors = (1..20).to_a.reverse
number = 20 …Run Code Online (Sandbox Code Playgroud) 我想通过代理服务器做"git clone".问题是我的代理服务器使用摘要式身份验证.所以我既没有在git文档中找到,也没有帮助那些已经制作的人.
我通过谷歌搜索挖掘,我找不到任何有用的结果.
Thxs.
是否有任何API让maingoroutine永远睡觉?
换句话说,我希望我的项目总是运行,除非我停止它.
如何获取Go中当前正在运行的进程列表?
操作系统包提供了一些功能:http://golang.org/pkg/os/ 但是没有任何内容可以查看正在运行的进程列表.
go ×6
blocking ×1
coordinates ×1
ctags ×1
decompiling ×1
elixir ×1
git ×1
goroutine ×1
hyperlink ×1
math ×1
matrix ×1
node.js ×1
performance ×1
proxy ×1
repository ×1
revert ×1
subclipse ×1
svn ×1