Hacker News new | comments | show | ask | jobs | submit login

> - compiles to a binary rather than running on a VM;

To me, this is one the many reasons why Go will fail.

VM is just a conceptual model.

Most languages that usually have a VM, also tend to have native code compilers available, it is just that most HN folks tend to be unaware of them.

Could you elaborate on this?

These days, there are more advantages than drawbacks to running in a VM. The performance advantage of native over byte code has shrunk considerably to the point of being only relevant for a tiny portion of applications (e.g. games). On the other hand, there are considerable advantages to JVM's, as Java and the generation of language it kickstarted has shown.

Having a VM also adds a whole lot of security concerns and in case of jvm - dependency on sun/oracle. VMs are not the only way to kickstart language generation, there are other options, such as llvm (yeah, that name is confusing in this context).

> ... case of jvm - dependency on sun/oracle ...

Why the dependency on Oracle?

There are other many other JVM available, even not certified ones, and you can also use compilers to native code if you wish to do so.

Wouldn't a vm help with security?

I'm not the parent, but one reason could be that the feature is more about collaboration of different languages for different purposes on a shared ecosystem (JVM, CLR, JS as bytecode, etc).

Which Go doesn't play well with.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact