Feeds

Google 'experiment' crossbreeds Python with C++

Multi-core coding on the Go

  • alert
  • submit to reddit

Boost IT visibility and business value

Google has open-sourced an experimental programming language that attempts to crossbreed a dynamic web-happy language like Python with a compiled language like C++.

"There is a growing rebellion against cumbersome type systems like those of Java and C++, pushing people towards dynamically typed languages such as Python and JavaScript, [but] some fundamental concepts such as garbage collection and parallel computation are not well supported by popular systems languages," the company says.

"We believe it's worth trying again with a new language, a concurrent, garbage-collected language with fast compilation."

Dubbed Go, the new language was unveiled today via the Google Open Source blog. "Want to write a server with thousands of communicating threads? Want to spend less time reading blogs while waiting for builds? Feel like whipping up a prototype of your latest idea? Go is the way to go!"

Google says the language is type safe and memory safe, and it's specifically designed for building software that runs on multi-core machines. Systems and servers are written as lightweight processes called goroutines. "Run thousands of goroutines if you want - and say good-bye to stack overflows," Google says.

But more than anything else, Google plays up the speed of the language - at both compile time and run-time. "Typical builds feel instantaneous," the company says. "Even large binaries compile in just a few seconds. And the compiled code runs close to the speed of C. Go lets you move fast."

In a video trumpeting the new language, Googler Russ Cox shows off the Go math package, which includes about 1,000 lines of code across and about 20 files. It builds in about 20 milliseconds, he says, and he can test the package - which involves rebuilding and running - in under a second.

The project's developers include Unix founding father Ken Thompson; fellow Bell Labs Unix developer Rob Pike; and Robert Griesemer, known for his work on the Java HotSpot compiler. They call the language Go because, well, you know. "'Ogle' would be a good name for a Go debugger," the company says.

For Go, go here. ®

Boost IT visibility and business value

More from The Register

next story
KDE releases ice-cream coloured Plasma 5 just in time for summer
Melty but refreshing - popular rival to Mint's Cinnamon's still a work in progress
Leaked Windows Phone 8.1 Update specs tease details of Nokia's next mobes
New screen sizes, dual SIMs, voice over LTE, and more
Secure microkernel that uses maths to be 'bug free' goes open source
Hacker-repelling, drone-protecting code will soon be yours to tweak as you see fit
Mozilla keeps its Beard, hopes anti-gay marriage troubles are now over
Plenty on new CEO's todo list – starting with Firefox's slipping grasp
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
Another day, another Firefox: Version 31 is upon us ALREADY
Web devs, Mozilla really wants you to like this one
Cloudy CoreOS Linux distro declares itself production-ready
Lightweight, container-happy Linux gets first Stable release
prev story

Whitepapers

Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Consolidation: The Foundation for IT Business Transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.
Backing up Big Data
Solving backup challenges and “protect everything from everywhere,” as we move into the era of big data management and the adoption of BYOD.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Why and how to choose the right cloud vendor
The benefits of cloud-based storage in your processes. Eliminate onsite, disk-based backup and archiving in favor of cloud-based data protection.