Andrew Gerrand and GO / FSCONS extra event

June 8, I opened the doors of IT University for an extra FSCONS event arranged by FSCONS and GTUGAndrew Gerrand from Google was here in Gothenburg to talk us through the language Go.

I liked Andrew’s talk btw. Clear. Easy to understand. He seemed to be interested in the questions asked. During the talk theere was a discussion on IDEs and according to Andrew there’s no need for an IDE when writing Go (which is the case (IMHO) when you’re programming for example Java). That sounded promising. Anyhow, let’s talk about Go. I am usually skeptical to new things (a clear sign of a geezer) and to some extent I’ll stay that way regarding Go. At least for a while more. Without any deeper knowledge I present my reflections on the language (as if anyone cares):

When it comes to memory management I feel pretty ok. As a developer it’s easier to let some one else do memory allocation for you (i.e not alloc and free), but at the same time when doing C/C++ I am in control and I can predict a bit better when things happen.

[In a previous version of this blog post I by mistake used the word concurrency to mean the distribution mechanism in Erlang. This is such a big mistake I’ve decided to rewrite history and edit my blog post – 2010-06-11]

Looking at “cross machine distribution mechanism” (think Erlang) I miss it. I asked Andrew about this and he said that there is none, but I interpreted him as if the door is not closed, but until then we will have to rely on a library (think pthreads in C).  However, if concurrency comes with a virtual machine or run time system (or what ever you want to call it) I am not sure I think it’s worth it. At least not when it comes to the kind of programs I normally write.

I asked Andrew about shared libraries and there is no such thing in Go. I surely understand why, but it would be neat to have. This could be done I guess with the C bindings mechanism in Go.

Enough of my complaints and ramblings. What do I think?…. what is my gut feeling. I am not a big fan of leaning on arguments such as “my inner feel says”, but that’s more or less what I will do.

Why Go?: It’s free software. It seems to be a language with which I can quickly get my things done.

Why not Go?: Not that many targets supported, no shared libs, non concurrency (why not use C instead of Go then?)

I guess I will give it a try…. and that’s not something I say that often. Perhaps write some Xnee bindings for Go.

Makes me wonder, should we invite some one to talk about Go at “the real” FSCONS 2010?

3 responses to “Andrew Gerrand and GO / FSCONS extra event

  1. Whaaa?! No Concurrency? Built-in support for concurrent programming is one of the core features of Go! Sure, there is not an Erlang-style of concurrency running across machines, but Go provides goroutines (lightweight threads) and channels (typed message conduits) as powerful concurrency primitives.

  2. Dam##, I feel like a jerk. Sorry Andrew!

    What I meant, but totally failed to state is that Go does not have the language built-in distribution mechanisms as Erlang provide, as you say in your comment. Calling this concurrency, as I did by mistake, is plain stupid.


    I will mark my mistake in the blog entry. Since I missed mentioning that I did like the generator thing chan I will write a blog post trying to undo my mistake and add the generator thing

    …. and thanks for enlightening me!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s