

Ask HN: Guido van Rossum's comment about go and scratch - zeynel1

I just read this cryptic comment by Guido van Rossum on Twitter: http://twitter.com/gvanrossum<p>"For all its flaws, I find Scratch (http://scratch.mit.edu/) a more interesting new language than Go (http://golang.org/)"<p>Go is presented as a systems language for experts; scratch looks like it was designed for kids to learn programming. Can they be compared?
======
megamark16
Perhaps what he's trying to say is that he's more interested in making
programming more interesting and accessible for 1000 more children than he is
in making an application able to scale up to 100,000 more users.

~~~
andresmh
Broadening interest in programming is indeed one of the core ideas behind
Scratch... and not to be picky but there are more than 90,000 people who have
created and shared their Scratch project on scratch.mit.edu :)

------
DanielStraight
I don't read anything from Guido, so I don't know how he thinks, but I would
interpret this as meaning that he doesn't see anything new and exciting in Go,
but that he does in Scratch. That alone forms a comparison. A programming
language that kids could actaully learn that would let them make web games
that they could share with their friends definitely seems like it would be
cool. What does Go offer that we can't already do?

~~~
jimbokun
"What does Go offer that we can't already do?"

Careful saying this around computer scientists, or you might get an earful
about Turing machines, etc.

But in any case, isn't Go meant to be a replacement for C and C++? At first
glance, Scratch does not seem to fill that niche, so Guido's comment seems a
non-sequitur to me.

~~~
jrockway
_Careful saying this around computer scientists, or you might get an earful
about Turing machines, etc._

Scientists wouldn't say that. You're thinking of people who just learned x86
assembly yesterday, and are amazed that they can say "Hello world" in 10x the
lines of any other language. "It's all the same!"

------
tamas
I don't see it as cryptic. He just said "it's a toy". Also: oranges are way
better than apples

~~~
dkersten
And not just a "toy", but an "inferior toy". Also: no way! Bananas are better.

------
Semiapies
I don't see it as a cryptic remark; it does seem like a bit of an inkblot to
some folks, though.

------
acg
I don't think they can be compared, he appears to be stating a preference (not
dismissing go).

~~~
brown9-2
Agreed. Sounds like he is just stating which happens to hold more of his
interest currently.

------
dkersten
I imagine he thinks that Scratch has more interesting and compelling features
as a language that tried to do new things than Go does. I personally found Go
to be very underwhelming and think that if it wasn't riding the Google wave
(pun kinda intended), nobody would give it a second look. Theres simply more
interesting languages out there (and, in its own way, Scratch is more
interesting to me and seemingly to Guido. Hell, you can even do concurrent
programming in Scratch :-P)

~~~
tspiteri
I looked into Go more because of its authors than because of the "Google
wave".

~~~
dkersten
Theres that too. To be honest, I'm a little disappointed. I expected them to
come up with something amazingly awesome... Ah, we'll see how things pan out.
But if it gains any traction, I still think its because of Google hype.

~~~
eru
Which might not be too bad. Even it Go lags behind the cutting edge, it may
still be an improvement on industry standards. Java was also heavily pushed by
Sun --- and while I don't like it, I guess it's memory management is still an
improvement over C++.

~~~
jrockway
But Go is no improvement over Java. (And you have to work pretty hard to not
improve on Java...)

~~~
dkersten
Java isn't an improvement over C++ either though.. oops circular logic!

~~~
eru
Citation neeed.

~~~
dkersten
I'd say its about on par. Which is better depends on the problem your trying
to solve. Sure, Java adds some nice features, like garbage collection and
potential compile-once-run-elsewhere and a bunch of other things, but C++ has
its advantages either. Heres a small few:

C++ can have much better startup time. While I no longer buy into the speed
thing (the JVM has become quite fast), I still find Java mesurably slow while
starting up. So much, in fact, that projects like NailGun were started to
improve things.

I hear Java's floating point hurts everyone everywhere:
<http://www.eecs.berkeley.edu/~wkahan/JAVAhurt.pdf>

C++ supports unsigned arithmetic, Java doesn't.

Javas generics use type erasure.

Checked exceptions in Java are a bad idea.

C++ allows tight OS integration.

And so on. While I'll be the first to admit that C++ is far from perfect, I
also don't buy that Java improves it. One is better sometimes, the other is
better other times, both are terrible in other situations again. I prefer C++
in more cases than I prefer Java, hence my comment.

But.. maybe I missed the point of the comment I replied to, since memory
management in Java might really be an improvement over C++.

~~~
eru
Thanks for the clarification. I guarded my original past by only speaking of
memory management. I have programmed in Java and C++, but not enough to say
which one is better. I tend to avoid both in favor of Haskell, Python, Ocaml,
Scheme and the like. D also looks promising.

~~~
dkersten
You're welcome. I use both in work, though a lot more Java than C++, but I
agree, when I'm given a choice (or working on my own projects) I, too, prefer
to avoid them. I've used a lot of Python in the past and, for the past two
months, have been using Clojure. Much much nicer to work in than Java or C++!

------
b-man
Scratch, Squeak and other similar environments follow the leading of Seymour
Papert and his Logo language:

low threshold and no ceiling

For that they are different, and for that they are interesting.

------
zeynel1
<http://scratch.mit.edu/>

<http://golang.org/>

<http://twitter.com/gvanrossum>

