Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Guido van Rossum's comment about go and scratch
24 points by zeynel1 on Nov 17, 2009 | hide | past | favorite | 26 comments
I just read this cryptic comment by Guido van Rossum on Twitter: http://twitter.com/gvanrossum

"For all its flaws, I find Scratch (http://scratch.mit.edu/) a more interesting new language than Go (http://golang.org/)"

Go is presented as a systems language for experts; scratch looks like it was designed for kids to learn programming. Can they be compared?




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.


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 :)


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?


"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.


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!"


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

I think you mean "Turing completeness". Turing machines are a different thing.


Smalltalk was designed for kids. Kids actually program in it.

http://www.squeakland.org/

But we (Smalltalkers) didn't get around to building and promoting a web sharing infrastructure for them, so good on the Scratch people. (Oh, and people have actually done systems programming in Smalltalk!)


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


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


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


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


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


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)


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


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.


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++.


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


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


Citation neeed.


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++.


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.


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++!


I expected them to come up with something amazingly awesome

Why?! C and UNIX are from the worse-is-better camp.


I actually agree with that statement. I dunno, I guess its because I used (and loved) C++ exclusively for a few years and I was hoping maybe they could make something similar - just better. But then when Go came out, reality hit :-)


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.





Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: