madison

Google hopes to remake programming with Go

Stephen Shankland CNET News | November 11, 2009 5:11 AM PST

Summary

Google hopes to boost both computing power and programmers' abilities with an open-source experimental programming language project called Go.
Google software luminaries such as Unix co-creator Ken Thompson believe that they can help boost both computing power and programmers' abilities with an open-source experimental programming language project called Go.

The computing industry is in constant tension between making a fresh start and evolving the current technology. The limits of today's hardware designs and programming technology led the Go team to take the former approach.

"We found some of those problems to be frustrating and decided that the only way to address them was linguistically," said Rob Pike, a principal software engineer working on Go. "We're systems software people ourselves. We wanted a language to make our lives better."

So far, Google's Go project consists of the programming language, compilers to convert what programmers write into software that computers can run, and a runtime package that endows Go programs with a number of built-in features. It's most similar to C and C++, but, Pike said, it employs modern features and has enough versatility that it could even be used within Web browsers.

For more, read "Google hopes to remake programming with Go" on CNET News.

Talkback Most Recent of 13 Talkback(s)

  • ZDNet Gravatar
    DonnieBoy
    11th Nov 2009
  • No. No pointers.
    Umm, no. No pointers, no "*" symbols littered in my code
    anymore, thanks.

    . . . and, frankly, it pushes typing from bad to worse. No
    OOP, and no replacement, other than what looks like a fairly
    weak interface system? At the very least they can look at
    typing systems that work rather than whining about how they
    think typing systems don't work.

    A whole lot of research has gone into typing in the field of
    computer science - so yes, there are alternatives to the C++
    and Java styles of typing. To just throw it all away sounds
    totally naive.

    OOP was a lot more about typing, frankly.

    It was a way of organizing large projects. Despite their
    claims to the contrary, OOP can actually make large projects
    easier. The only reason why OOP is a barrier to creating
    large projects is because many people go overboard and get
    obsessed with making zillions of small classes.

    If you keep the inheritance fairly clean and avoid making
    everything you encounter a class, you should be fine. I have
    no issues writing large projects.

    In addition to providing a typing system, one of the things
    inheritance provided was scope: The ability to control
    the visibility of variables. And no, I really don't think
    that silly capitalization rules and suffixes are a good
    replacement for a decent packaging system.

    Nothing is more painful in a large project than name clashes.
    The scope frankly needs more clarity and the developer really
    needs more control over scope than Go provides.

    This is not a serious language. It's a toy.
    ZDNet Gravatar
    CobraA1
    11th Nov 2009
  • They Should .....
    have had a LOOK at the S-lang project first. A C type language, with garbage collection , seems to have a lot of the functionality, access to the C library core ....

    see http://www.s-lang.org for more info.
    ZDNet Gravatar
    linux4u
    11th Nov 2009
  • Why?
    I question the point of doing this. There are already loads of programming languages out there, why add yet another one to the mix? What is the benefit? Seriously I am a fan of Google but it seems like they keep trying to reinvent the wheel instead of helping make the existing wheels better.

    For instance, they could contribute to Ubuntu or some Linux distro and pump money to improve the UI and apps (basically make it like OSX but free, since OSX is essentially the only mainstream Linux-like operating system out there); instead, they say "We're making our own operating system!".

    They could contribute to Python or Ruby or one of the dozens of other great languages out there and make it better, instead they say "We're making our own programming language!"

    They could have done like Amazon EC2 and offered a customizable cloud stack that could be used for any language, but instead they made it pretty much proprietary.

    It seems Google has delusions of grandeur and thinks that they can do X better than anybody else, instead of taking Y and making it more like their vision of X.
    ZDNet Gravatar
    wayne62682
    11th Nov 2009
  • Agree, but think on this...
    "It seems Google has delusions of grandeur and thinks that they can do X better than anybody else, instead of taking Y and making it more like their vision of X."

    Lets replace X with some of the things that Google has done and see what happens to that statement.

    1. Search. Yep, did it better then anyone else.

    2. eMail. Arguable, but IMO and of many others, best internet web-mail service. And IMO, the only reason its not as widely used as Google search is that the switching costs (headaches) of moving from an e-mail address you've used for 10 years to a new one is just too much for many people. At this point, I wouldn't switch off gMail even if something better comes along - too much headaches.

    3. Cloud computing - jury still out on that one, but there was no product Y to take and change to be more like product X - everyone starting from scratch here.

    4. Browser - hailed as the best, but still infantile. Last barrier is plug-ins and Chrome will finally be better then Firefox.

    5. Mobile OS. Windows Mo 6.5 is no comparison (a joke). the iPhone in general is a joke (mainly thanks to AT&T, but also Apple). Only serious contender here are the Blackberry phones. So can't call it best, but it is very very nice. Remains to see how it matures. Its too bad Verizon is going to kill the Driod with all the hidden fees associated with it.

    6. Chrome OS. Can't comment on this one as its still in vapor-ware mode. We'll see.

    7. GPS navigation - for years I've hoped and prayed that Google would partner with some GPS manufacturer (I'd prefer Pioneer, but any would do) and give us a GPS navigator product based off Google maps so we can forever get rid of the clunky, horrible mapping tech that the GPS makers use. Its not surprising - their specialty is the hardware, but the content was always deemed 'good enough'. Well its not. Google maps are amazing and now that they are getting ported to mobile devices, a GPS device is sure to follow.

    So by my count thats 5 or 6 out of 7 values of X for which Google DID do better then anybody else. That's a pretty good track record in my book. Perhaps you aren't giving this language the full benefit of a doubt?

    "The views expressed here are mine and do not reflect the official opinion of my employer or the organization through which the Internet was accessed."
    ZDNet Gravatar
    gnesterenko
    11th Nov 2009
  • thoughts
    "At this point, I wouldn't switch off gMail
    even if something better comes along - too much
    headaches."

    I would in a heartbeat. IMAP works great for
    moving to somebody else, and I'm a bit sick of
    the totally flat tag system and poor filters.

    "4. Browser - hailed as the best, but still
    infantile. Last barrier is plug-ins and Chrome
    will finally be better then Firefox."

    Gonna depend on how good the plugin system is.
    If developers flock to it, and there's a
    central place for users to get them, then yeah.
    Otherwise, maybe not.

    "the iPhone in general is a joke"

    In your opinion, of course. I don't have exact
    numbers, but it is very popular.

    "Google maps are amazing and now that they are
    getting ported to mobile devices, a GPS device
    is sure to follow."

    Google maps are an amazing technology - for
    mapping. Not sure they're amazing for turn-by-
    turn real time navigation.

    ZDNet Gravatar
    CobraA1
    11th Nov 2009
  • Why?
    Why? I'm not a programmer at all buy I do understand that
    when a completely new outcome or paradigm is planned
    then it requires completely new inputs. You know "if you
    keep doing what you always do, you will keep getting what
    you always get".

    What I think is happening is that Google has a plan that will
    make the OS, the desktop, and the browser
    indistinguishable as separate entities, maybe a completely
    new/different OS entity. And if an application or program
    runs in this environment it will run in any environment all the
    way across the internet.
    ZDNet Gravatar
    bigpicture
    11th Nov 2009
  • Why not help something that already exists?
    As others have said I think they should have helped improve something that already exists rather than requiring folks to have to start from scratch again.

    Done it too often already, thanks, so you other guys go on without me.
    ZDNet Gravatar
    johnd126
    11th Nov 2009
  • RE: Google hopes to remake programming with Go
    I thought that was the argument for JAVA. Are Google just doing this to have their own language?
    ZDNet Gravatar
    agsGeoff
    11th Nov 2009
  • ZDNet Gravatar
    VoiceOfLogic
    12th Nov 2009
  • RE: Yet Another Crappy Language
    glad to see an expert on the subject! so many
    compelling arguments, so many valid points! my
    god, what WAS google thinking? and that long,
    detailed report about it's various
    incompatibilities and areas in which it couldn't
    be scaled. so good!

    moron
    ZDNet Gravatar
    ranatalus
    12th Nov 2009
  • Wow, lots of hating...
    I'm glad to see we have so many programming language experts on ZDNet. Since we all know Ken Thomson and Rob Pike don't know anything about programming languages. Oh, wait, right, most software in existence is written in languages and using practices they developed along with many others on their team.

    I, for one, am thrilled by the prospects of this new language. However, I actually understand why they need it. Google has two choices capable of working _at_all_ with their MapReduce based architecture: Java or Python. They both suck to varying degrees for that purpose. The big win is with multi-processor, multi-node software that needs to deal with concurrency and scalability problems. That's not a matter of "fixing" an existing language. It really is a matter of starting from scratch, IMHO. All the rest is gravy.
    ZDNet Gravatar
    cabdriverjim
    12th Nov 2009
  • RE: Google hopes to remake programming with Go
    compiled code for browsers? sounds interesting. it's about time something replaced javascript.
    ZDNet Gravatar
    iieugenio
    17th Nov 2009

Talkback - Tell Us What You Think

Formatting +
BB Codes - Note: HTML is not supported in forums
  • [b] Bold [/b]
  • [i] Italic [/i]
  • [u] Underline [/u]
  • [s] Strikethrough [/s]
  • [q] "Quote" [/q]
  • [ol][*] 1. Ordered List [/ol]
  • [ul][*] · Unordered List [/ul]
  • [pre] Preformat [/pre]
  • [quote] "Blockquote" [/quote]

The best of ZDNet, delivered

ZDNet Newsletters

Get the best of ZDNet delivered straight to your inbox

Facebook Activity