On Tue, Feb 25, 2020 at 6:22 PM Jon Conradt <j...@theconradts.com> wrote:
> The Fuchsia Programming Language Policy > <https://fuchsia.googlesource.com/fuchsia/+/refs/heads/master/docs/project/policy/programming_languages.md#Go> > gives > some insight into the experience the Fuchsia team has had with Go, and it > doesn't sound good. > > "The Fuchsia Platform Source Tree has had negative implementation > experience using Go. The system components the Fuchsia project has built in > Go have used more memory and kernel resources than their counterparts (or > replacements) the Fuchsia project has built using C++ or Rust." > > > This shouldn't be unexpected. It is the trade-off you make with a garbage collector. However, it should also be quantified. 33%-40% extra memory usage is likely. 800% isn't, and would suppose there are structural problems with the program. If it is merely a qualitative assessment, then it falls into the category of subjective opinion. This may be relevant, but it isn't healthy goal setting. It would have been better if you had "Go programs we wrote routinely use 200% of the memory of comparable C++ programs. This is too much, and we can only accept an increase of 20%." Because then the whole thing is actionable. The Go garbage collector's pause times is a good example of such an approach. Start with a conservative goal. Achieve that. Then improve it over time. Any program has a bar resource-wise. If you can jump over it, you should accept the win. Moving the bar continually is usually a bad sign, in my opinion, since the rules are now up for interpretation outside of your direct control. So once you demonstrate you can jump high enough, it will just be moved up a tad so you can't. "Der ProzeĆ" comes to mind :) -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAGrdgiUFc%2BppEB4KDkGtq_sKWg41Qpv7Hgcs4SVYYB7UYhvsAw%40mail.gmail.com.