| > And in Go you do not have to specify the interfaces being implemented explicitly. This is precisely what I meant by "... [interfaces] aren't a replacement for abstract base classes either. Interfaces in Go provide polymorphism through structural sub-typing." Whether it's a good thing or not, it drastically changes the way they are used. > No version management. Fun for hobby projects, a nightmare for large mission critical programs. I use the `go` tool for more than hobby projects. You are re-stating what I already acknowledged. What point are you trying to convey? I said the `go` tool was strictly less powerful, but that it was awesome for the common case. If you don't think that's worth anything, then I'm not sure what else to tell you. > Many languages have green thread implementations (Ruby 1.8, Python, etc.). But there is a varying amount of multiplexing to native threads and some implementations are hampered by global interpreter locks, etc. In fact, even old Java versions implemented green threads, but they were replaced by native threads. So........... Go wins here. Do you really want to have a conversation? Or do you just want to mirror everything I said right back at me? |