4 ms·
Correct me if I'm wrong but comparing Go against Swift, C, C++, and Rust isn't really fair since one of Go's goals is compilation speed, in which it seems to sh
by ldeangelis 6y ago
Correct me if I'm wrong but comparing Go against Swift, C, C++, and Rust isn't really fair since one of Go's goals is compilation speed, in which it seems to shine against these other languages. From what I understand, you're going to trade performance against compilation speed, and Go is on the opposite side of these choices compared to the other languages.
- onei 6y agoRealistically, compilation speed is something every major language is going to try to improve upon to improve adoption. I haven't looked at the internals of the go compiler, but it seems a bit simplistic perhaps in the interest of improving speed. For example, it stops outputting errors after a point when it can clearly go further after having demonstrated that it's parser can recover. The error messages have lots of room for improvement, particularly compared to Rust.
- ldeangelis 6y agoI think one of the pain points that Go addresses is the compilation speed of large C++ projects at Google, and it's one of the reasons it was made in the first place. From what I know C++ and Rust are in the same ballpark in terms of compilation speed, while Go gives a noticeable improvement.
- pjmlp 6y agoWe could compare it with D, Ada, Object Pascal or Delphi, and it would lose on compilation speed, language features and quality of generated code.
- jhoechtl 6y agoClaims without a proof are just - claims
- pjmlp 6y agoClaims?!? Anyone can get the compilers and try them for themselves (except for Ada, which you can only get the free GNAT one). Language features are quite obvious, one just needs to look a language reference manual. The only claim is being lazy to accept facts and acknowledge that even Turbo Pascal for MS-DOS did it before Go.