Hey! Ho! Let's Go!

Tuesday, November 10, 2009 at 3:15 PM

Here at Google, we believe programming should be fast, productive, and most importantly, fun. That's why we're excited to open source an experimental new language called Go. Go combines the development speed of working in a dynamic language like 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 lets you move fast.

Go is a great language for systems programming with support for multi-processing, a fresh and lightweight take on object-oriented design, plus some cool features like true closures and reflection.

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! Check out the video for more information or visit golang.org.

40 comments:

Ze said...

Now there's an exciting piece of news. About every company had a language of its own, where was Google's?

Nice name, too. The game of Go has long been one of my interests, though I am not very knowledgeable at it.

Congrats to Google for the new language, I hope it's a great success.

Gracini Guiraldelli, R. H. said...

This kind of programming language is what is needed on embedded programming: fast (to code, to compile and to run the apps), support to multi-tasking and easy to learn.

But some points I didn't get: why do develop a new language if already exists C++? Why don't leverage open source languages as Lua? If safety is the goal, why don't use Ada or SPARK?

The Architect said...

I loved python but wished it was as fast as C.

I shall give this new language a Go.

RealEnder said...

How different is this to Gnome's Vala?

Brendan Miller said...

It's nice to see people thinking more about how to improve traditional non-vm languages... but...

It requires GC, which is usually the right choice, but not when you are dealing with a class of languages that are typically used to write kernels and do embedded programming.

The truth is, if you can afford GC, you can probably afford to just use Python, or C#, or Java.

That said, the way they use interfaces is kind of interesting. I'm wondering how they make their vtables work?

Vlad Patryshev said...

Nice beautiful PL/I-2009

I'd leave language design to professionals

Genjitsu said...

How make run in Windows OS?
And... only console applications? i like form applications...

Go! made me it! haha

Sorry bad english xD

TheFox said...

Issue 9

kuoweil11 said...

Go's "Hello,world!" will change the world!

mehdi.asgari said...

Wow
Great job
Will there be a Windows version in the future ?

Cotton said...

Annnnd... Go!

lovekhanna said...

That sounds kool,had u guys developed
framework using this lang??????.

Hprof1 said...

go fast

Praveen said...

google go is cool......

Candra Adi Putra said...

Interesting...I'll try it

PRADEEP PEETHAMBARAM said...

Go Google! Go Google!

Gracini Guiraldelli, R. H. said...

This kind of language looks great for embedded systems: have you thought about it?

Viet said...

It look like I will spend my weekend for this new language.

Kirby said...

The GO programming language already exists. Why is Google hijacking an existing name? What happened to "DON'T BE EVIL"? Is Hijacking not evil?

errolcroy said...

I would like to try this language, but I use Windows. If adoption is one of the goals for the language, then why exclude SO many skilled developers….or maybe I am totally wrong and the development tools will run on Windows? Educate me, please, because I would like very much to begin at the beginning of this effort. Thanks, in advance, for any information that you may provide.

Roberto said...

I write my first experience with this language (in Italian): Go, un nuovo linguaggio

Paras Sharma said...

Let's GO !!!!!!!

Ricardo said...

Go fast,Go fun and Go Open Source languages! x)

Martini Rosso said...

looks awesome :-)

Bruce IV said...

But I like checking blogs while my code compiles ...

Ariel said...

Go (and other Google services) would be cool if my friends in Cuba could access the site... Google is blocking developers in Cuba... and the worst thing is that they don't have any word from Google about this odd thing.

mmms1841 said...

A quick question:

Why do you mean when you say C/C++ is safe? I thought programs written in C/C++ are more likely to have security holes because programmers need to allocate/deallocate dynamic memory manually.

Sais Sekour said...

I suggest: "INTERLAND" as a new name for Go!

Why "INTERLAND" ?
Because Internet it a new country, not just an international network, a new Geo, a new land
with a new way (workframe) of thinking (hacking), with new people: YOU

We are an Internet developers (INTERLAND developpers) not africain or americain or australian
or asian or europian developpers , we dev for the Internet, not for a country or a flag ....
we dev for people all over the world, we are changing.

We are INTERLAND Devs , and we need GO! as an INTERLAND Language, a Smarter Languange for a
Smarter planet.

let's realy change the world or let's create another world together, more Funny :) and less
Stupid . let's wake up the real Humain, let's go! out of beta version , with intelligence,
not wars and insecurity, destructions, let's fix those bugs (stupidities) together, we have
to stop, debug and fix.

no more flags, One Land, INTERLAND.

Now i'll click on [save changes] button and send it :) hope that will wake us.

http://code.google.com/p/go/issues/detail?id=9#c242

notna said...

Would have been great if you Go'gle guys would have considered to get involved into the D programming language ...

KAT said...

oops! its another yet 2 go but cute 2 good.

bala... said...

Intrsting. But Gordan seems to be a bad choice,,,,,,,,

http://technotraan.blogspot.com

board tc said...

Read about Francis McCabe's original Go! language.

Bruno said...

Hi!

Nice initiative. There is definitely room for a language like this. Just one thing: I seems to me that the design goals for Go are quite similar to the D programming language.
D is also open source, so what were the motives for rolling your own instead of contributing there?

abiola89 said...

I just wanna correct you on your comment on new Google's Go programming language. The name hijacking you are talking about is not exactly true cos Google's own is Go without the '!' exclamation mark. Hope the language will be a success.

Tim Acheson said...

This is interesting, on an academic level.

"the development speed of working in a dynamic [scripting] language like Python with the performance and safety of a compiled [real programming] language"

We all know how useful that is, because we already have that capability. Fort instance, the .NET framework allows us to write in Python and compile it. But I much prefer to write C#. It's structure is so elegant and clear. Visual Studio and ReSharper write much of the code for us predictively so we don't even have to type all of it.

Of course, what real-world developers need is not just a language, but substantial set of frameworks and development tools, as we get in one package with .NET and the Microsoft Web Platform, or indeed to some extent with J2EE and Oracle. With .NET I can have a choice of languages which I can use interchangeably. Microsoft has created numerous programming languages over the years, and I’ve used them all.

Tom Wilson said...

You need to find a new name - Go already exists, see: http://en.wikipedia.org/wiki/Go!_%28programming_language%29

I would have thought that the developers might have checked!

Alain-Christian said...

Way to Google the name before using it, guys...


Issue 9 - I have already used the name for *MY* programming language

Sumit Arora said...

Quite skeptical about it. Don't know about its portability on all platforms. I would need a strong reason to move to this. But a good and innovative step. Congrats to Google!

dksingh said...

I tried it and its very similar to C/C++. I'll try more...

bodi said...

The Battle Begin......