←back to thread

327 points AareyBaba | 3 comments | | HN request time: 0.427s | source
Show context
bri3d ◴[] No.46185823[source]
https://web.archive.org/web/20111219004314/http://journal.th... (referenced, at least tangentially, in the video) is a piece from the engineering lead which does a great job discussing Why C++. The short summary is "they couldn't find enough people to write Ada, and even if they could, they also couldn't find enough Ada middleware and toolchain."

I actually think Ada would be an easier sell today than it was back then. It seems to me that the software field overall has become more open to a wider variety of languages and concepts, and knowing Ada wouldn't be perceived as widely as career pidgeonholing today. Plus, Ada is having a bit of a resurgence with stuff like NVidia picking SPARK.

replies(5): >>46188588 #>>46188799 #>>46189574 #>>46190668 #>>46196352 #
ecshafer ◴[] No.46188799[source]
I've always strongly disliked this argument of not enough X programmers. If the DoD enforces the requirement for Ada, Universities, job training centers, and companies will follow. People can learn new languages. And the F35 and America's combat readiness would be in a better place today with Ada instead of C++.
replies(7): >>46189342 #>>46189545 #>>46189754 #>>46190651 #>>46191046 #>>46192553 #>>46192991 #
lallysingh ◴[] No.46190651[source]
No they won't. DoD is small compared to the rest of the software market. You get better quality and lower cost with COTS than with custom solutions, unless you spend a crap ton. The labor market for software's no different.

Everyone likes to crap on C++ because it's (a) popular and (b) tries to make everyone happy with a ton of different paradigms built-in. But you can program nearly any system with it more scalably than anything else.

replies(3): >>46191699 #>>46193691 #>>46195042 #
1. nmz ◴[] No.46195042[source]
Go was built because C++ does not scale. Anybody that's ever used a source based distro knows that if you're installing/building a large C++ codebase, better forget your PC for the day because you will not be using it. Rust also applies here, but at least multiplatform support is easier, so I don't fault it for slow build times
replies(2): >>46201733 #>>46203237 #
2. lallysingh ◴[] No.46201733[source]
Go was made because Rob Pike didn't want to do Java.
3. pjmlp ◴[] No.46203237[source]
Go was created because Rob Pike hates C++, notice Plan 9 and Inferno don't have C++ compilers, even though C++ was born on UNIX at Bell Labs.

As for compilation times, yes that is an issue, they could have switched to Java as other Google departments were doing, with some JNI if needed.

As sidenote, Kubernetes was started in Java and only switching to Go after some Go folks joined the team and advocated for the rewrite, see related FOSDEM talk.