

Go version 1 proposal - roxtar
https://docs.google.com/document/pub?id=1ny8uI-_BHrDCZv_zNBSthNKAMX_fR_0dc6epA6lztRE&pli=1

======
hopeless
The future's looking bright for Go.

I've recently been looking at some new languages: Scala, Haskell, Clojure,
Node.js etc. Go was the _only_ site to put code samples (live ones at that) on
their front page.

 _Language/framework creators take note_ : The first thing I want to see on
your site is what the code looks like. How to install it is a distant second
(I can look it up once you've convinced me it's worth installing)

~~~
pestaa
I have never _ever_ understood the desire to make installation details and
lists of requirements the first thing I see on software docs. I come across
all these tiny packages or full-blown applications and I have to literally
spend minutes to figure out what they actually _do_.

Being open source is not a real advantage any more, but it takes so little
effort to summarize your project at the top of the README, so please do it so
I can fall in love with your stuff.

~~~
simmons
I've noticed that this problem exists even beyond software documentation. It's
often hard to figure out what a company does by looking at their web site, for
instance. I wish every such document started with "Product Foo is ____. It
does ____."

------
chrisfarms
very happy to hear about the "go" command on the timeline. While I haven't
really had much trouble building Makefile this has seemed one of the least
elegant parts of development with Go

Checkout the usage for ./go so-far here:
[http://code.google.com/p/go/source/browse/src/cmd/go/script....](http://code.google.com/p/go/source/browse/src/cmd/go/script.txt)

~~~
zerosanity
Makefile fussing was driving me insane with Go. I was trying to build with
directory local packages to keep bits of code separated cleanly and it was a
pain to get working.

I discovered <http://code.google.com/p/go-gb/> and haven't looked back. It
makes building Go code SO much nicer. If I just want to try something quick in
Go I just make a directory, place my whatever.go file in it, type 'gb', and
run my program.

I really hope they make this 'go' tool as easy as 'gb'.

------
masterponomo
Go 1 is a good idea. I just hope Go 2 is not considered harmful.

~~~
michaelcampbell
oh, my. If Google doesn't capitalize on that when Go 2.x DOES hit the streets,
I'll be very disappointed.

Well played.

------
DizzyDoo
"The Go 1 release will be available in source and binary form for at least
these platforms: ... Windows (2000 + later): amd64, 386"

I develop primarily on a Windows machine, so this is some good news.

~~~
uriel
Recent releases are already available for Windows, see
<http://code.google.com/p/gomingw/>

------
Someone
I have only skimmed the page, but this caught my eye:

    
    
        Close is intended as a way for a sender to signal
        that no more values will be sent.  
    
        Go 1 will disallow close on receive-only channels.
    

Why, then, would one still call this 'close'? Wouldn't "done",
"dontexpectmore" or "sendEndOfData" be better names?

~~~
uriel
Yesterday in #go-nuts we were discussing better names for close() which
currently causes so much confusion, my suggestion was end(), but done() is a
good one too.

------
majika
It's currently quite a pain to get the most-recent Go release installed, and
integrated into your development environment. I'd like to see Go v1 be more
distribution-friendly. This is the biggest show-stopper for wider Go adoption.

I'd also like to see a built-in IDE analogous to Python's IDLE to lower the
barrier-to-entry. IDLE is great for education.

I also think that Go needs to establish some sort of independent entity for
the future development of the language. People need assurance that Go isn't
going to go away if Google gets bored with it. Go hasn't crossed that rubicon
yet, and this is another big barrier to adoption.

~~~
uriel
There are Go packages for Debian and Ubuntu at least ( <http://go-
lang.cat-v.org/packages> ) plus a binary distribution for Windows, and
installing in other systems is quite trivial:

    
    
      $ hg clone -u release https://go.googlecode.com/hg/ go
      $ cd go/src
      $ ./all.bash

~~~
alec
Last I checked a few months ago, if you want to use a distribution's version
of Go, you must install all later libraries as root - there's no place for "my
local libraries".

~~~
uriel
That sounds like a problem with the packaging for your distribution.

If you install Go the way golang.org instructions indicate, you can install
everything as a non-root user just fine.

------
uggedal
Submitted yesterday: <http://news.ycombinator.com/item?id=3080027>

~~~
hartror
I certainly missed it in the wall of Steve that was HN yesterday. ;)

