I like Go because it improves on C for engineers in almost every way and avoids classes, and, at least today, if you have a problem then it will be solved quickly by the people following the GitHub issue tracker and contributing to the source code.
Go avoids complexities such as generics (aka templates) usually available > in other languages (e.g., C++). This may be a temporary state, a major Go 2 discussion is about adding generics (https://github.com/golang/go/issues/15292). The Go 1 compatibility approach may be worth mentioning: programs written in 2009 will still work in 2019 with the state of the art compiler. Select, channels, goroutines, methods, interface, closures, function types, and map may be worth mentioning. For me seeing a small (<100 lines of code) application more complex than "Hello, world!" written in other languages then in idiomatic Go would help drive the point. There is hence no need for constantly worrying about `by reference` or `by > value`. This is actually a tough part of Go when deciding how to define methods (by pointer or by value), but at least there’s no pointer arithmetic. Matt On Saturday, March 3, 2018 at 7:56:41 AM UTC-6, Alex Rice wrote: > > Hi, thanks for sharing. I am not convinced about the reasons stated why Go > is better than the other languages you mentioned. I am just learning Go, > but I have 20 years of experience as a professional developer using various > languages. I think students, beginners and professionals should use Go > because of it's developer-first attitude. Ergonomics, I've heard it said. > > * productivity > * enjoyment > * nice workflow and development tools > * unix philosophy of small chain-able tools > > The lissajous example in the the gopl.io [1] book is a great example. In > ~50 lines of code, there is a generator of animated gifs of harmonic motion > curves, which it serves up on http, or write to standard out. How many > lines of code would the same thing be in C, or in Python? I suspect more > LOC, and I suspect 3rd party libraries would be involved. > > 1. https://github.com/adonovan/gopl.io/blob/master/ch1/lissajous/main.go > > Cheers, > Alex > > -- 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. For more options, visit https://groups.google.com/d/optout.