There are three authors of the Go language: 1. Robert Griesemer, who works at Google, participated in the development of the Java HotSpot virtual machine, and is a major contributor to Google V8, Chubby and HotSpot JVM. 2. Rob Pike is the author of UNIX, UTF-8, and plan9. 3. Ken Thompson is the author of B and C languages and the father of UNIX.
The operating environment of this tutorial: Windows 7 system, GO version 1.18, Dell G3 computer.
Go language (also known as Golang) is a statically strongly typed, compiled programming language that can easily build simple, reliable and efficient software. Go language syntax is similar to C language, but has richer functions.
golang author
There are three authors of Go language, they are: Robert Griesemer, Robert ·Rob Pike and Ken Thompson, pictured below (left to right). Among them, Robert Glitzmer is the main contributor of Google V8, Chubby and HotSpot JVM; Rob Pike is the author of UNIX, UTF-8, plan9; Ken Thompson is the author of B language and C language, and is also the author of UNIX, UTF-8 and plan9. The father of UNIX.
Picture: Three authors of Go language
1) Ken Thompson
Member of Bell Labs Unix team, C One of the founders of the language, Unix, and Plan 9, he designed and implemented the original UNIX operating system in the 1970s. From this point alone, his contribution to computer science cannot be overstated. He also collaborated with Rob Pike to design the UTF-8 encoding scheme.
2) Rob Pike
The general manager of the Go language project and a member of the Unix team at Bell Labs. In addition to helping design UTF-8, he also helped develop distributed Multi-user operating system Plan 9, Inferno operating system and Limbo programming language, and co-authored "The Unix Programming Environment", which gave an orthodox explanation of the design concept of UNIX.
3) Robert Griesemer
Works at Google and participates in the development of the Java HotSpot virtual machine. He has an in-depth understanding of language design and is responsible for the Chrome browser and Node.js The code generation part of the Google V8 JavaScript engine used.
The original intention of these heavyweights in computer science to design the Go language was to meet Google's needs. Designing the language took two years, incorporating the entire team's years of experience and in-depth knowledge of programming language design. The design team drew on the design wisdom of Pascal, Oberon and C languages, while giving Go language the convenience of a dynamic language. Therefore, the Go language embodies the language design philosophy of experienced computer scientists and was designed for one of the largest Internet companies in the world.
All the designers of the Go language say that they designed the Go language because C brought them frustration. At the Go design team meeting at Google I/O 2012, Rob Pike said this:
We do a lot of C development and are tired of waiting for compilation to complete. Although this is a joke, but To a large extent this is true.
Description:
Robert Glitzmer, Rob Pike and Ken Thompson began designing the Go language in September 2007, and then Ian Lance Taylor and Russ Cox also joined in the design of the Go language. In November 2009, the Go language was officially announced and became an open source project. The Go language was first implemented on the Linux and Mac OS platforms, and later the implementation under the Windows system was added. In March 2012, the Go language released its first official stable version. In 2016, the Go language was selected as the "TIOBE Best Language of 2016" by the software evaluation company TIOBE.
Go is a compiled language
Go uses a compiler to compile code. A compiler compiles source code into a binary (or bytecode) format; as it compiles the code, the compiler checks for errors, optimizes performance, and outputs binaries that can run on different platforms. To create and run a Go program, a programmer must perform the following steps.
Use a text editor to create a Go program;
Save the file;
Compile the program;
Run the compiled executable file.
This is different from languages like Python, Ruby, and JavaScript, which do not include a compilation step. Go comes with a compiler, so there is no need to install a separate compiler.
【Related recommendations: Go video tutorial, Programming teaching】
The above is the detailed content of Who are the authors of golang?. For more information, please follow other related articles on the PHP Chinese website!

Golangisidealforbuildingscalablesystemsduetoitsefficiencyandconcurrency,whilePythonexcelsinquickscriptinganddataanalysisduetoitssimplicityandvastecosystem.Golang'sdesignencouragesclean,readablecodeanditsgoroutinesenableefficientconcurrentoperations,t

Golang is better than C in concurrency, while C is better than Golang in raw speed. 1) Golang achieves efficient concurrency through goroutine and channel, which is suitable for handling a large number of concurrent tasks. 2)C Through compiler optimization and standard library, it provides high performance close to hardware, suitable for applications that require extreme optimization.

Reasons for choosing Golang include: 1) high concurrency performance, 2) static type system, 3) garbage collection mechanism, 4) rich standard libraries and ecosystems, which make it an ideal choice for developing efficient and reliable software.

Golang is suitable for rapid development and concurrent scenarios, and C is suitable for scenarios where extreme performance and low-level control are required. 1) Golang improves performance through garbage collection and concurrency mechanisms, and is suitable for high-concurrency Web service development. 2) C achieves the ultimate performance through manual memory management and compiler optimization, and is suitable for embedded system development.

Golang performs better in compilation time and concurrent processing, while C has more advantages in running speed and memory management. 1.Golang has fast compilation speed and is suitable for rapid development. 2.C runs fast and is suitable for performance-critical applications. 3. Golang is simple and efficient in concurrent processing, suitable for concurrent programming. 4.C Manual memory management provides higher performance, but increases development complexity.

Golang's application in web services and system programming is mainly reflected in its simplicity, efficiency and concurrency. 1) In web services, Golang supports the creation of high-performance web applications and APIs through powerful HTTP libraries and concurrent processing capabilities. 2) In system programming, Golang uses features close to hardware and compatibility with C language to be suitable for operating system development and embedded systems.

Golang and C have their own advantages and disadvantages in performance comparison: 1. Golang is suitable for high concurrency and rapid development, but garbage collection may affect performance; 2.C provides higher performance and hardware control, but has high development complexity. When making a choice, you need to consider project requirements and team skills in a comprehensive way.

Golang is suitable for high-performance and concurrent programming scenarios, while Python is suitable for rapid development and data processing. 1.Golang emphasizes simplicity and efficiency, and is suitable for back-end services and microservices. 2. Python is known for its concise syntax and rich libraries, suitable for data science and machine learning.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 English version
Recommended: Win version, supports code prompts!

WebStorm Mac version
Useful JavaScript development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SublimeText3 Linux new version
SublimeText3 Linux latest version