1) if thing vs if (thing) kotlin makes you add un-needed ()
2) a string is always "" vs null!
3) you can follow the logic always 100% of the time vs. getting lost in a maze of clever kotlin.
1) if thing vs if (thing) kotlin makes you add un-needed ()
2) a string is always "" vs null!
3) you can follow the logic always 100% of the time vs. getting lost in a maze of clever kotlin.
Kotlin String == Go string Kotlin's String? == Go *string
They're fully equivalent in this regard.
If you wanted to note where Go strings are actually superior to Kotlin strings I'd give: 1. Go strings are slices. For immutable data that's pretty cool. I like it less when it comes to mutable arrays. 2. Go strings are single-byte UTF8, instead of wide-char UTF16. That's strictly superior.
Both of these limitations are probably due to the JVM, not Kotlin itself.
You can see the bare bones if conditions and for loops sure, but what are they actually trying to do? golang code is very thin - it takes a lot to write to convey a particular piece of logic. What a few lines of map/filter/accumulate/group by in a more expressive language like Java or Kotlin becomes dozens of lines in golang. It becomes challenging to extract the underlying logic and to follow it. Java and Kotlin are strictly superior.
I'm a beginner though, and kotlin was the first language where it occurred to me I could just read the source of a library.
The nice thing about Go is that its simplicity permeates the entire ecosystem.
If you use bundler and Gemfile.lock everything 'just works' in Ruby.
Node/npm/yarn is a nightmare
This is really just semantics, because nullable strings do exist in go: *string. The difference is you pay a surprisingly severe performance penalty for them.
> Our engineers come from a variety of programming backgrounds, so we certainly do have a diversity of opinion on Go vs. other languages. That said, Go is doing the job we “hired” it to do when we started Goliath, and we’re thankful for the team driving its continued evolution and the community that has built up around it!
If you were calling a reference for a potential new hire, would you consider this a glowing review?
Ships code on time, on spec, performance exceeding expectations. Sure.