A new open source computer language. Go.

No, don’t go, stay! The NAME of the language is go.

Which was a poor choice of name because it will be very hard to google “go.” In fact, Google won’t let you google “go” by default because it is one of the SLWs (stupid little words) that Google prefers to pretend does not exist (I assume, possibly wrongly). And the true irony is that go, the language, is Google’s new language!

Anyway…


It is a compiled langauge designed to build things like servers and other system level stuff, and it seems to have a ver very fast compiler. The idea is to have a programming language like Cxx built with a somewhat different philosophy of simplicity. It runs on Linux and Macs. To install it in Linux, be root or use sudo:


$ sudo apt-get install bison gcc libc6-dev ed

It will put 19.1 megabytes or so on your hard drive, then you go here and learn how to use it.

But, before you do any of that, you should read Mark Chu-Carroll’s post on the language.

Comments

  1. #1 CyberLizard
    November 12, 2009

    Brainfuck is the best programming language EVAR!

  2. #2 Greg Laden
    November 12, 2009

    That’s interesting. It is a computer program that presumably generates machine langauge (at some point) which has far fewer possible statements/commands/tokens/etc than machine language has.

  3. #3 Tristanm
    November 12, 2009

    Google is receiving heat over this language because there is another programming language called “Go!” The makers of the other Go aren’t happy with Google’s name choice.

  4. #4 lylebot
    November 12, 2009

    Of course you can Google “go”; it’s also the name of an ancient Chinese game. “Chinese checkers”. And the acronym for “Gene Ontology”.

    Those “stupid little words” are called stopwords, and Google doesn’t actually remove them from the index anyway. You can search on “the” if you really want to. (First result for me when logged in: Wikipedia, the free encyclopedia. First result for me when not logged in: The Onion.)

  5. #5 Jeremy Lydell Haugen
    November 12, 2009

    lylebot, Go and Chinese Checkers are actually two different games:

    http://en.wikipedia.org/wiki/Go_board_game
    http://en.wikipedia.org/wiki/Chinese_checkers

    No company, project, or technology should ever be called any word I can find in the OED, much less something as short and ambigous as Go.

  6. #6 Greg Laden
    November 12, 2009

    logged in?

  7. #7 KeithB
    November 12, 2009

    MarkCC has a bunch of posts about pathological languages similar to and including BrainF*ck:

    http://scienceblogs.com/goodmath/goodmath/programming/pathological_programming/

  8. #8 Brian X
    November 12, 2009

    Uh… Go (the game) bears no relation whatsoever to Chinese Checkers, or checkers, or even chess. If anything, it’s a lot closer to tic-tac-toe or dots and boxes, though a great deal more complex than either one of those. (It seems to also be related to, or at least was an influence on, Othello and Scrabble, but exactly how I’m not too sure.)

    As for Go (the language) — do we really need another systems programming language? I mean, yeah, creating languages is kind of fun, but once you get past C, C++, Objective-C, PL/I, Forth, Smalltalk, the Algol family, Ada, and BCPL, there really isn’t much ground that hasn’t been covered already. (Heard anyone using BLISS or Alef lately?) Go (the language) seems to be jumping into a market that’s already thoroughly saturated. It’s sort of like constructed languages — it’s one thing to create (as Tolkien and Marc Okrand did) a language for its own sake as a piece of art, but when you consider the existence of Esperanto, as well as natural languages like English/French/German/Russian/Spanish/Arabic, where’s the need for yet another auxiliary language?

  9. #9 mark
    November 12, 2009

    This is supposed to be better than C in it’s syntax and implementation and it compiles very fast. So yes, this might be a worthwhile project.

  10. #10 Brian X
    November 13, 2009

    mark:

    Is that really likely to be a factor? The better is the enemy of the good (or, one might argue, the adequate). People aren’t immune to this; Go is what Alef (the original systems programming language for the Plan 9 OS) was supposed to be, at least in some respects. Alef was a miserable failure and Plan 9 was completely rewritten in C. In a niche of a niche, it was a failure. For that matter, look at Dylan (an object-oriented Lisp dialect with an Algol-like syntax; created by Apple for Newton and Copland, failed) or REBOL (proprietary scripting language created by the guy who made ARexx; a very minor player in a highly congested and balkanized market dominated by VB, Perl, Python, Ruby, PHP, and Applescript, among others); whatever their advantages, they had no real function in the market and are largely irrelevant as a result.

    I realize lots of people have their favorite pet languages, and a decent case can be made for a lot of them being better than the standard issue now. But there’s no market niche for yet another systems language. In order to have even a remote shot at breaking through, it would have to do something like the AuroraUX project (Solaris with Ada userland), and as we’ve seen Bell Labs tried that with Plan 9 and gave up on it.

    I really hope Google isn’t planning on going for broke with Go; I find it nearly impossible to believe that making Go the standard language on, say, Android is even remotely a good idea. (As it is, I’m none too comfortable with Apple’s reliance on Objective C, which is as blatant a case of hammer-and-nail syndrome as I’ve ever seen.)

  11. #11 IanW
    November 13, 2009

    “It is a compiled langauge designed to…”

    Measure LANs?! What happened to that spell-checker, Greg?!

  12. #12 Greg Laden
    November 13, 2009

    Brian, I think you are totally correct however Mark’s point is still valid… the thing is, perl was not written to be a widely used language doing all the stuff it does. Neither was Python, and even C. In other words, whether or not a language emerges as widely used in a given area has less to do with its capabilities than other things. Seemingly.

    For instance, we are already seeing GO being implemented, at least at the concept level, to measure LANS.

  13. #13 IanW
    November 13, 2009

    I was able to Google “go” – even from their standard search page. Of course, the results seem to consist entirely of the Japanese game of that name (at least on the first page of results), and not a mention of the programming language.

    It’s harder to search for it on wikipedia since they insist on giving you everything except that word, even though they have multiple references to the word when you finally trick it into showing them to you.

    Their page is here:
    http://en.wikipedia.org/wiki/Go_(programming_language)
    not to be confused with the other Go! language, here:
    http://en.wikipedia.org/wiki/Go!_(programming_language)

  14. #14 usb sticks
    November 14, 2009

    Hii..
    Yes, Google mean “go”. Most probably person are using search engine “Google”. People who want whatever in your site. Google provides many facility to us. Computer knows many language like C, C++, java. I like this posting about this topic.
    Thank you for that.

  15. #15 العاب
    November 19, 2009

    Hy how r u people?
    hope u fine…
    There are thousands of games, but only a small number of game goals. That means that most games have the same game goal. At first this seems surprising. But when we look at it closely and see that every has a winner and a loser, the goal of the game must be something measurable, relatively simple to measure, and depicted in a game.
    plz check it out u ll have fun…
    Thanks u.
    http://games.m5zn.com/

  16. #16 Brian Barker
    November 23, 2009

    Re your comment about Esperanto.

    Its a pity that most people do not know that Esperanto has become a living language, however after a short period of 122 years Esperanto is now in the top 100 languages, out of 6,800 worldwide, according to the CIA World factbook. It is the 17th most used language in Wikipedia, and a language choice of Google, Skype, Firefox and Facebook.

    Native Esperanto speakers,(people who have used the language from birth), include World Chess Champion Susan Polger, Ulrich Brandenberg the new German Ambassador to NATO and Nobel Laureate Daniel Bovet. According to the CIA Factbook the language is within the top 100 languages, out of all languages, worldwide.

    Your readers may be interested in the following video :) http://video.google.com/videoplay?docid=-8837438938991452670 A glimpse of the language can be seen at http://www.lernu.net :)

  17. #17 Brian X
    November 24, 2009

    Brian Barker:

    I have a few issues with the way Zamenhof designed Esperanto, but that’s neither here nor there. The point is that Esperanto absolutely dominates its “market”, to the point where there’s no real reason to even consider another auxlang (except possibly Lojban or Volapük) except for fun. Mind you, that’s a perfectly good reason to learn any language, artlang or auxlang. But not at all the point of auxlangs to begin with. And, indeed, that is exactly what Esperanto is, movementarianism aside — yes, it’s a vibrant community with a century-plus of literature and culture, but at the end of the day, even Esperanto was a failure at its intended purpose.