| By Maureen O'Gara | Article Rating: |
|
| November 11, 2009 10:30 AM EST | Reads: |
14,960 |
Open Source Journal on Ulitzer
Ken Thompson (pictured) and Rob Pike, a couple of the revered old soldiers who wrote Unix, Plan 9 and Inferno at Bell Labs – and programming languages like B, without which C probably wouldn’t exist, and Limbo – have come up with an experimental new programming language called Go that Google, their current refuge, open sourced Tuesday under a BSD-style license.
If it catches on, it would be the first major systems language to emerge in a decade.
One of the small Go team compares it to Java, calling it “performant but garbage collected” and “vastly more enjoyable to code in.”
Go’s primary attribute appears to be that it’s fast. It reportedly compiles to machine code very quickly thanks to a couple of Plan 9-beholden compilers.
Google says “Go combines the development speed of working in a dynamic language like Python” – Google does dote on Python – “with the performance and safety of a compiled language like C or C++. Typical builds feel instantaneous; even large binaries compile in just a few seconds. And the compiled code runs close to the speed of C.”
Go has been in the works for the last two years, but has only been a full-time project at Google since the middle of last year.
It was born, the Go team says, “out of frustration with existing languages and environments for systems programming. Programming had become too difficult and the choice of languages was partly to blame,” a statement that sounds very much like Ken Thompson.
“One had to choose either efficient compilation, efficient execution, or ease of programming; all three were not available in the same mainstream language. Programmers who could were choosing ease over safety and efficiency by moving to dynamically typed languages such as Python and JavaScript rather than C++ or, to a lesser extent, Java.”
“Go,” says one of the team’s FAQs, “is an attempt to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language. It also aims to be modern, with support for networked and multi-core computing. Finally, it is intended to be fast: it should take at most a few seconds to build a large executable on a single computer. To meet these goals required addressing a number of linguistic issues: an expressive but lightweight type system; concurrency and garbage collection; rigid dependency specification; and so on. These cannot be addressed well by libraries or tools; a new language was called for.”
Go descends from C in syntax and borrows declarations and packages from the Pascal/Modula/Oberon family and concurrency from Limbo, but it’s still a completely new language, its creators say, meant to escape the “bookkeeping, repetition and clerical work” of current languages as well as their “clutter and complexity” while still being “sophisticated.”
It’s object-oriented but without the type hierarchies.
Although it’s meant to make writing the servers and other software Google uses internally a lot easier, Go isn’t mature enough for large-scale production use yet. Its development team is experimenting with it as a candidate server environment and the server behind http://golang.org is a Go program.
Since Thompson’s involved, one would assume that the project’s called Go after the oriental board game that’s sort of like chess. He worked on Belle, the first chess program to get a master’s rating.
Published November 11, 2009 Reads 14,960
Copyright © 2009 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Maureen O'Gara
Maureen O'Gara the most read technology reporter for the past 20 years, is the Cloud Computing and Virtualization News Desk editor of SYS-CON Media. She is the publisher of famous "Billygrams" and the editor-in-chief of "Client/Server News" for more than a decade. One of the most respected technology reporters in the business, Maureen can be reached by email at maureen(at)sys-con.com or paperboy(at)g2news.com, and by phone at 516 759-7025. Twitter: @MaureenOGara
- Cloud People: A Who's Who of Cloud Computing
- Enterasys Spotlights SDN's Impact on Traditional Networking in Upcoming Webinar
- NASA's Twitter Account Wins Back-To-Back Shorty Awards
- Google Compute enters the IaaS market
- GoBank Announces Timing of General Availability and National Distribution Relationships at FinovateSpring
- MicroStrategy Announces General Availability of MicroStrategy 9.3.1
- MicroStrategy Announces General Availability of MicroStrategy 9.3.1
- Cloud Expo | Maximizing the Small Things: Efficiencies for Cloud Hardware
- Google Submits Concessions to EC; Gets Sued in the UK
- Cloud Business Solutions, Social Media, and Platform Systems of Engagement Market Shares, Strategies, and Forecasts, Worldwide, 2013 to 2019
- Global Mobile Security (mSecurity) Market 2013-2018
- RightScale Supports Windows Azure Infrastructure Services General Availability
- Cloud People: A Who's Who of Cloud Computing
- Enterasys Spotlights SDN's Impact on Traditional Networking in Upcoming Webinar
- NASA's Twitter Account Wins Back-To-Back Shorty Awards
- RetailMeNot Shoppers Trend Report: While Over 8 in 10 U.S. Residents Cite Affordability as Their Top Vacation Priority, a Majority (58%) Could Waste Hundreds of Dollars by Booking Travel a la Carte
- ChannelAdvisor Participates in Upcoming Retail Industry Conferences RBTE and Retail Week Live
- Basho Announces Open Source Riak CS and General Availability of Riak CS Enterprise v1.3
- Enter for a Chance to Win an Apple iPad Mini During the Grand Opening of Silverleaf, Taylor Morrison’s Latest New Home Community in Denver
- How to Protect Your Facebook Account Before Graph Search is Public
- Google Compute enters the IaaS market
- Google Says Motorola’s Upcoming Phones Don’t ‘Wow’ Them
- Why Cloud Computing Skills Will Be Required for IT Workers
- GoBank Announces Timing of General Availability and National Distribution Relationships at FinovateSpring
- Where Are RIA Technologies Headed in 2008?
- Cloud People: A Who's Who of Cloud Computing
- Dolphin Announces Open API With Over 50 Add-ons Including Dropbox and Wikipedia
- ManageWP Powers Over 100,000 WordPress Sites Within Three Months of Launch
- SEO/SEM Tips & Tricks: How and When Should You Submit Your Website to Google?
- Google Version 2.0: Googzilla - The Calculating Predator
- Google's Competitive Advantage: It Leverages "The Power of Free"
- Cloud Expo 2011 East To Attract 10,000 Delegates and 200 Exhibitors
- Google Space Launches at Heathrow Airport
- AOL To Enhance Video Search Engine by Adding RSS Feeds
- Ulitzer’s Amazing First 30 Days in Public Beta
- The World's Youngest "Google Entrepreneur" Is One Month Old






















