Home  >  Article  >  Backend Development  >  What language is go?

What language is go?

藏色散人
藏色散人Original
2020-12-08 10:59:315815browse

go is a statically strongly typed, compiled, concurrent programming language with garbage collection function developed by Google. It is developed based on the Inferno operating system and supports Linux, macOS, Windows and other operations. system.

What language is go?

#The operating environment of this article: Windows 7 system, go1.15 version, Dell G3 computer.

Related recommendations: "golang tutorial"

Go (also known as Golang) is a statically strongly typed, A compiled, concurrent, and garbage-collected programming language.

Robert Grismo, Rob Pike, and Ken Thompson began designing Go in September 2007, and later Ian Lance Taylor and Russ Cox joined the project. Go is developed based on the Inferno operating system. Go was officially announced in November 2009 and became an open source project, supporting operating systems such as Linux, macOS, and Windows. In 2016, Go was selected as "TIOBE's Best Language of 2016" by the software evaluation company TIOBE.

Go's syntax is close to C language, but the declaration of variables is different. Go supports garbage collection. Go's parallel computing model is based on Tony Hall's Communicating Sequential Process (CSP). Other languages ​​that adopt similar models include Occam and Limbo [3]. Go also has the characteristics of this model, such as channel transmission. Thread pools and pipelines can be built through parallel constructs such as goroutines and channels. Plugin support is opened in version 1.8, which means that some functions can now be dynamically loaded from Go.

Compared with C, Go does not include functions such as enumeration, exception handling, inheritance, generics, assertions, virtual functions, etc., but it adds slice type, concurrency, pipeline, and garbage collection functions. , language-level support for interfaces and other features [3]. Go 2.0 version will support generics [9], but has a negative attitude towards the existence of assertions, and also defends itself for not providing type inheritance.

Unlike Java, Go natively provides associative arrays (also known as hash tables (Hashes) or dictionaries (Dictionaries)).

For more related articles, please visit the go language tutorial column!

The above is the detailed content of What language is go?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn