Appendix B. A Brief History of the Three Languages
Go
The Go language was designed at Google and officially released in 2009. It was created to improve upon the shortcomings of C/C++. Its guiding principles include simplicity, safety, readability, and minimalism. Of the three languages in this book, it’s the youngest.
Go’s design principle of simplicity means that many features present in other languages (including languages that inspired it) are absent in it, namely:
-
Generics1
-
Different ways to write a loop
-
Classes (in the C++/Java sense)
-
Inheritance
-
Implicit conversion between types
-
Pointer arithmetic
However, Go includes many useful features that aren’t in other languages, such as:
- Concurrency
- Package management
- Formatting (
go fmt) - Static code analysis (
go vet) - Most significantly for this book: unit testing!
A major source of confusion (and some rancor) is what is the proper name of the language?2 The official name of the language is simply “Go,” although—probably because this is, ironically, a difficult thing to Google and because the official website of the language is https://golang.org—it’s also referred to as “Golang.” I have gone with the official name and called this language Go in this book, with the G always capitalized. I hope this doesn’t irk you too much. Look at it this way, if this is the biggest source of our disagreement, we’ve much to be grateful for!
This book uses version 1.17 of Go.
JavaScript
This book uses the flavor of JavaScript that’s ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access