

Interview with Google Go Language lead Rob Pike - netherland
http://thechangelog.com/post/259401776/episode-0-0-3-googles-go-programming-language

======
marketer
Something that slightly bothered me: Pike was asked if go would have something
like rubygems, and he said he had no idea what ruby gems are and how ruby
handles third party packages.

This is troubling because I've written a couple libraries for go, and it would
be awesome to have something similar to rubygems or pypi to distribute them.

~~~
dlsspy
I got that impression with go a bit. It did feel like there were a couple of
things omitted from the language simply because the authors had never
experienced them done correctly.

Exceptions always comes up as the big one, but the more subtle part of a
concurrent system that erlang did really well was allow you to monitor
processes for crash. You _can_ abort a goroutine early, but nobody can hear
about it.

Of course, you can also segfault the thing using a null pointer dereference,
but you can't do anything other than have your entire application fail.

~~~
marketer
Yeah I get this feeling a lot. If you're working with formats like json and
yaml, there really isn't an adequate way to represent those formats in Go
(something as natural as python dictionaries or ruby hashes)

~~~
rsaarelm
What's wrong with "map[string] interface{}"?

------
adamstac
@marketer - Too true. Wynn and I didn't like that either. I think it was just
that he wasn't personally aware of that feature. I could ping them and get a
more clear answer via email for you.

~~~
marketer
Something I'd like to know is what languages they've used in the past few
years. When Pike answered the question, he mentioned a bunch of dead research
languages. He said that Ken Thompson was influenced by B, but I highly doubt
that he's written any B code in the past 30 years.

Go's overarching principle is "to reduce the amount of typing" and "reduce
clutter and complexity", but if you switch from something like python or ruby
to go, you'll quickly notice there's a lot more typing and complexity for
programs. Especially when it comes to stuff like type declarations and error
handling.

~~~
ThinkWriteMute
I'm pretty new to programming (like 2008 new) but my mentor is someone who has
been around for a while and all his descriptions of Pike seem to show a trait
where Pike mistakes bad habits and bad design for tradition. Anything that
breaks tradition is bad. Nothing to really back that feeling up, but that is
what I see when I read his work.

