Google’s attempt to kill off C just got a new development: Today, the company announced a new update for Go, its own 6-year-old programming language, bringing it to version 1.5. It’s the sixth major update since Go’s inception in 2009, and it finally removes all traces of the C language it’s built on.
Putting out their own coding language has become a hallmark of many tech giants today: Just as Microsoft had C#, others tout their own efforts, like Facebook (Hack), Google (Go) and Apple (Objective-C/Swift). Some go the open-source route like Hack and Go, though it appears the latter has taken its time.
See also: Google Go Finds New Home On GitHub
Now, the language has become “self-hosting” for the first time. The Go runtime, compiler and linker are now completely written in Go itself. The changes cover several improvements, including some crucial updates for mobile app development.
Google’s goal was to create a more efficient coding language, and some of Go’s new features highlight that. The official documentation touts speed in compiling, reduction in overhead, lightweight construction, and support for concurrent (or simultaneous) execution and communication as some of the key features of the language.
Ready, Steady, Go
Go sprang from a project led by three Google engineers, who wanted to cut down on the complexities and sprawling feature-set of C++.
Designed for modern-day computing—particularly cloud and mobile computing—the language has become a minor but rising star on the open-source development scene. Go 1.5 represents another step forward along that path.
The new version includes a new “Garbage Collector” (which was designed to boost program responsiveness, even under heavy load), better platform support for Darwin/ARM64 for mobile app development, and other new features to encourage developers to experiment with Go on Android and iOS.
In addition, developers can now create shared libraries from Go packages that can be called from C programs.
Where It’s Going
The primary concern, when it comes to any programming language, is adoption. Go moved from Mercurial to GitHub as its hosting platform of choice, but is it gaining traction with developers out in the real world?
It would appear so: This year’s GopherCon conference for Go developers attracted more than 1,250 attendees, double the number that turned up in 2014.
In the RedMonk Programming Language Rankings for June 2015, based on frequency of use on GitHub and Stack Overflow, Go sits in 15th place, sandwiched between Scala and Haskell. (Apple’s Swift appears in 18th position.) The language was outside the top 20 last year, but just since January, it has moved up two places.
“While [Go] has its critics, its growth prospects appear secure,” writes RedMonk’s Stephen O’Grady. “And should the Android support … mature, Go’s path to becoming a top 10 if not top 5 language would be clear.” In other words, if it can carve its place in important projects, that would essentially seal the deal.
“An increasingly strategic foundational role within projects that are themselves strategic” would give Go a promising future, Grady says.
Go may not loom large on the coding front now, but that could change before long. With support for Android and (experimental support) for iOS—not to mention the rush to mobile and the cloud across most areas of development—Go’s way forward looks a bit brighter now.
Image courtesy of Robert Frangloso