Re:(On | No) Syntactic Support for Error Handling
by hedora on Wednesday June 04, 2025 @09:46AM
(#44180698)
Take a look a the kubernetes source code. It's millions of lines, and almost all of it is generated. In a language like C++ or Rust, the vast majority of it would be template or macro instantiations.
For an apples-to-apples comparison of compilation speed, you should either include the time it takes go generate to run, and the IDE to re-index all the crap it emits, or you should count the number of lines of code in the largest intermediate representation that C++ or Rust has.
Re:(On | No) Syntactic Support for Error Handling
by bheadmaster on Thursday June 05, 2025 @10:45AM
(#44192192)
> For an apples-to-apples comparison of compilation speed, you should either include the time it takes go generate to run
But that would be unfair to the very design choice of omitting metaprogramming while exposing the go/ast library to users to foster code generation.
However, OCaml has a very fast compiler, comparable in speed to Go. So a more expressive type system is not necessarily leading to long compilation times.
Furthermore, Scala and Haskell incremental type checking is faster than full compilation and fast enough for interactive use. I would love to see some evidence that Golang devs are actually more productive than Scala or Haskell devs. So many variables probably influence dev productivity and controlling for them while doing a sufficiently powered experiment is very expensive.