- Security with Go
- John Daniel Leon
- 317字
- 2021-06-30 19:06:38
The History of Go
Go is a relatively young language, with its inception in 2007 and open sourcing in 2009. It started at Google as a 20% project with Robert Griesemer, Rob Pike, and Ken Thompson. A 20% project means that the project's developers spent 20% of their time working on it as an experimental side project. Go 1.0 was officially released in March 2012. It was planned from the beginning to be an open source language. Until Go 1.5, the compiler, linker, and assembler were written in C. After version 1.5, everything was written in Go.
Google initially launched Go for Linux and macOS, and the community drove the effort for other platforms, namely Windows, FreeBSD, OpenBSD, NetBSD, and Solaris. It has even been ported to IBM z Systems mainframes. Bill O'Farrell of IBM gave a talk at GopherCon 2016 in Denver titled Porting Go to the IBM z Architecture (https://www.youtube.com/watch?v=z0f4Wgi94eo).
Google is known to use Python, Java, and C++. It is understandable why they chose those languages too. They each fill certain roles and have their own strengths and weaknesses. Go was an attempt to create a new language that fits the needs of Google. They needed software that could perform extremely well under heavy loads, support concurrency, and that was easy to read and write, and compile quickly.
The triggering event for starting the Go project was dealing with a massive C++ code base that took hours to build because of the way C++ handles dependencies and re-includes headers (https://www.youtube.com/watch?v=bj9T2c2Xk_s (37:15)). This is why one of Go's main goals was to compile quickly. Go helped turn hours of compile time to seconds because it handles dependencies much more efficiently than C++.
Discussions for Go 2.0 have begun, but they are still in the conceptual stages. There is no timeline for a release, and there is no rush to release a new major version.
- 幾何原本
- 西去東來:沿絲綢之路數(shù)學(xué)知識的傳播與交流
- 線性代數(shù)
- 數(shù)學(xué)女孩2:費(fèi)馬大定理
- Ethereum Smart Contract Development
- 張梅玲:讓孩子受益一生的數(shù)學(xué)思維訓(xùn)練
- 紅發(fā)克拉拉的數(shù)學(xué)奇想
- 中國數(shù)學(xué)雙基教學(xué)的史與思
- 數(shù)學(xué)原來可以這樣學(xué):初中篇
- 特殊函數(shù)概論習(xí)題解答
- 生活中的數(shù)學(xué)
- Digital Forensics with Kali Linux
- 線性代數(shù)
- 黎曼猜想漫談:一場攀登數(shù)學(xué)高峰的天才盛宴
- 給孩子的數(shù)學(xué)思維課