Go Programming Language Is Growing Up

The Go programming language hits version 1.5 with new features and a new maturity.

Curtis Franklin Jr., Senior Editor at Dark Reading

August 21, 2015

3 Min Read
<p align="left">(Image: <a href="https://pixabay.com/en/traffic-light-green-go-306386/" target="_blank">ClkerFreeVectorImages</a> via Pixabay)</p>

11 Programming Languages That Lost Their Mojo

11 Programming Languages That Lost Their Mojo

11 Programming Languages That Lost Their Mojo (Click image for larger view and slideshow.)

Have we hit "Peak C++"? Some programmers would love to think so, though by most measures Bjarne Stroustrup's object-oriented creation is still going strong. Go, a long-shot contender to steal some of the C++ thunder, might have improved its odds a bit with the release of a new version that casts off some of its ties to the past and adds new features.

Go began life as an exercise for three Google software developers, Robert Griesemer, Rob Pike, and Ken Thompson. The three didn't like C++ and felt that C -- while good -- wasn't perfect. They began with a C-like framework and moved forward until, six years later, we have this week's release of Go 1.5.

One of the notable features of this latest Go release is that it's the first to be written completely in Go. Previous versions were written in C  and required a C compiler to build the distribution. This is the sort of detail that is generally interesting only to compiler nerds. But, it's a point that marks a level of maturity and an ability to generate code that works closely with the low-level operating system and hardware.

There are a number of changes to the language in Version 1.5, but three will be important to a lot of developers. First, the default setting for compiled programs is now to use the maximum number of available cores rather than just one core, as was the case in previous versions.

[ What's ahead for Java? Read Java: 7 Powerful Features For The Future. ]

A much wider variety of internal packages is now supported. This should make it much easier for teams that build libraries and repositories of code to be used and re-used in multiple applications.

Finally, the process of garbage collection, during which all sorts of temporary variables and structures are cleaned up while the application is running, is considerably faster than in previous versions. In general, the updates to the language and its compiler extend the ability of the language to be used in larger, enterprise-class applications and make applications written in Go execute faster.

Is there any bad news for developers? Well, yes. Because the conversion of compiler code from C to Go was done through an automated process, the code for the compiler itself isn't very elegant or efficient. So when you're compiling a program, it's going to take longer in Version 1.5 than in Version 1.4. The developers are well aware of this and plan to fix it in future versions.

Should you use Go? If you like the functionality of C++ but don't like the very long compile times and language complexity, then Go is worth a look. Google has -- some of its applications are written in Go. Version 1.5 is a major step for Go. It will be interesting to see the language, and the development language, improve in the next revision.

About the Author(s)

Curtis Franklin Jr.

Senior Editor at Dark Reading

Curtis Franklin Jr. is Senior Editor at Dark Reading. In this role he focuses on product and technology coverage for the publication. In addition he works on audio and video programming for Dark Reading and contributes to activities at Interop ITX, Black Hat, INsecurity, and other conferences.

Previously he was editor of Light Reading's Security Now and executive editor, technology, at InformationWeek where he was also executive producer of InformationWeek's online radio and podcast episodes.

Curtis has been writing about technologies and products in computing and networking since the early 1980s. He has contributed to a number of technology-industry publications including Enterprise Efficiency, ChannelWeb, Network Computing, InfoWorld, PCWorld, Dark Reading, and ITWorld.com on subjects ranging from mobile enterprise computing to enterprise security and wireless networking.

Curtis is the author of thousands of articles, the co-author of five books, and has been a frequent speaker at computer and networking industry conferences across North America and Europe. His most popular book, The Absolute Beginner's Guide to Podcasting, with co-author George Colombo, was published by Que Books. His most recent book, Cloud Computing: Technologies and Strategies of the Ubiquitous Data Center, with co-author Brian Chee, was released in April 2010. His next book, Securing the Cloud: Security Strategies for the Ubiquitous Data Center, with co-author Brian Chee, is scheduled for release in the Fall of 2018.

When he's not writing, Curtis is a painter, photographer, cook, and multi-instrumentalist musician. He is active in amateur radio (KG4GWA), scuba diving, stand-up paddleboarding, and is a certified Florida Master Naturalist.

Never Miss a Beat: Get a snapshot of the issues affecting the IT industry straight to your inbox.

You May Also Like

More Insights