(disclosure: I haven't fiddled with Go at all yet, so I know nothing about the language itself)
(disclosure: I haven't fiddled with Go at all yet, so I know nothing about the language itself)
- super fast compile times for fast developer iterations
- you can create an interface (set of methods) that your module owns, and apply it to objects created by other modules without recompiling. If you only need one method you can take that one. It encourages decoupling you from your dependencies.
- the code has one correct formatting convention and a tool that will auto-format your code
- many complex rules for numeric conversions that are implicit in C and cause no end of trouble are explicit and much simpler in Go.
- treating concurrency as a series of sequential process connected with channels makes it MUCH easier to reason about.
Beginners usually think Python strong indentation is a weakness of the language. I actually find C++ freedom being more error prone:
if (a < b);
a = b
It's a not very frequent bug, but when it happens it takes you hours to spot. ;) if (a < b) {
a = b;
}EDIT: Whoops, it's actually compiled into bytecode then executed by the VM.
https://en.wikipedia.org/wiki/Python_(programming_language)#...
A quick Google search brought up this, for instance:https://bitbucket.org/StephaneBunel/pythonpep8autoformat
Yes we can also make a single big ass executable out of any python code but it's slower and not supported out of the box.