Hacker News new | past | comments | ask | show | jobs | submit login
Bram Cohen: Comments on Go (bramcohen.livejournal.com)
65 points by jeff18 on Nov 14, 2009 | hide | past | favorite | 31 comments



On topic: I find it funny that someone of Bram Cohens' standing would miss the point of fast compilation.

If you're working in plenty of other languages compile time does not go up linear with code size, but much faster.

When you start out it zips right along, but as soon as you cross that 10,000 line mark the first bits of irritation set it in, and not much later than that you can go and get a cup of coffee and drink it while your code rebuilds. For really large projects an hour isn't much at all!

Fast compile time = I won't lose my train of thought while waiting for the compiler to finish. It's a 'tool' thing, and I think that such details make for much better tools.


"Go's speed of compilation is very nice, although I'm afraid I view that not so much as a strength of Go but as an awfulness of C++."

I think his point is that Go isn't special in this regard since many languages already compile much faster than C++. For example, Delphi/Free Pascal.


Indeed. Rob Pike makes a point of the 120kloc RTL compiling in 8 seconds in his presentation video, but the Delphi RTL on my machine right here compiles in about 11 seconds, and it has over 417kloc - and much (~ 2 to 3 seconds) of that time is in linking together a runtime package, for folks who want a dynamically linked RTL, rather than statically linked.


Is that compiling after the equivalent of 'make clean'?


Doesn't really make any difference. Cleaning the RTL takes about 170ms - it's just deleting some files. Build is driven by msbuild, so there is some .NET startup cost in there too.

EDIT: Oh, you mean is it an incremental build? No. It's a full clean build, and that 11 seconds also includes preprocessing some API header files.


Sure, but Go is aiming for the space that C/C++ occupy, not for the space that Delphi and Free Pascal occupy.

And neither Delphi nor Free Pascal look like they are going to be threatening C/C++ any time soon, this new language just might.


Free Pascal is almost identical to C++ apart from syntax; they're both compiled, statically typed Algol descendants with object orientation and generics bolted on.

Which is partly why Free Pascal use is still marginal - the only significant advantage is compilation speed, while lack of popularity is a major disadvantage in terms of libraries, quality of optimizing compilers, etc.


On top of compilation speed, Go also has CSP style support for concurrency built in, which is something that C++ will only ever have bolted on.


The standard gnu linker is quite slow.

Free Pascal does have generics, but doesn't appear to have equivalent template metaprogramming. C++ that only uses templates for generics may be similarly fast-compiling.

I'd compare C to Pascal.


I see two drawbacks with 'Free Pascal', first the name (naming your language 'Pascal' is a surefire way of getting lots of people to turn off on the spot, even if it had lots of merits), secondly there does not seem to be any lively community around the language (but that may be related to the first item).


The Delphi community is small but vocal. It may just be that you don't notice them if you're not looking for them!


Personally I think delphi will always be one of the most undervalued platforms of all time. Good IDE, lightning fast, lots of libraries. In many ways it was way ahead of its time.

It's also an excellent example of product quality not being the metric by which success will be determined.

Unfortunately.


Well, I guess I'll also jump on topic here :)

I used to primarily write Javascript and Python code, but then I moved into the world of Objective-C and compilation. I also think that compiling is a productivity and focus killer, and I think addressing this issue is a worthy goal.


I really wish people wouldn't include the name of the author in the title.

I think this should be banned and cleaned up by the moderators in the same way using numbers in the titles of submissions is, and the same way that moderators removed "Ohhhh snapppp" from the Go post about the author of Go!

Invariably, Paul Bucheit, Paul Graham, Bram Cohen, Guido van Rossum, Joel Spolsky, and other famous hackers get voted to the very top of the list. If these guys are great writers and great thinkers, then their articles will speak for themselves, and they usually do (but not always).

For the few people who have never heard of Bram Cohen or Joe Hewitt (currently 1 and 2 on HN), then their names are just noise. For those who have heard of them, it just biases their judgment in both clicking and voting.

In this case, Bram's blog even carries his name... so why make his name the first two words in the headline? Do we really need to make to use this kind of name-dropping to highlight content? That sounds like the opposite of content democratization to me.


In general I agree, but in this case it's really helpful for disambiguation from the dozens of other "what I think about Go" posts that people have been writing.

Incidentally, I agree with him w.r.t. lack of exceptions being a big barrier. Everything else is cool / live-withable.


That's just the point... it's not helpful for disambiguation.

If the article was great, then it would be disambiguated by votes!


In the general case yes. But this title, without the author, is more or less the same as at least 10 articles I've already read. When everybody is chipping in their opinion, "X's opinion on Y" is a better way of mentally separating them than "Yet another opinion on Y".

A good title should: - Be easily identified as different from others of similar topic (mine) - Non-name-dropping (yours) - Non-editorial (by board convention)

By (2) the original title is bad and by (1) just dropping the name is no good. Is there a title that works for all three rules?


Well, by that standard it seems that the majority of HN readers think it is great, it is currently #1 on the homepage.

If only the number of votes would be a true measure of 'greatness', then I could stop reading HN on the 'new' page. That's where the gems come by and plenty of them are lost.


Jeez, I feel like I'm talking to a wall here. I'm arguing that the reason that it has so many votes could be because his name is in the title.

I bet if you showed 200 people the article, and told 100 of them Bram wrote it, then the 100 who knew would score the article higher. Is that a good thing?

Leave the names out, and let the content decide.


> Jeez, I feel like I'm talking to a wall here.

Sorry for being dense, it's early :)

> I'm arguing that the reason that it has so many votes could be because his name is in the title.

Yes, I got that, it's just that because it is also in the domain name in this case I'd expect it to be just as high right now if the name had not been in the title.

> I bet if you showed 200 people the article, and told 100 of them Bram wrote it, then the 100 who knew would score the article higher. Is that a good thing?

No, it isn't. But that would mean that you'd also have to drop the domain name from behind the title.

Personally I don't mind, it helps me to avoid some of the more overexposed sites here.


I don't mind the domain name... it's not nearly the size of the title, and it's not the very first words I see for any particular post. I expect it has less effect, and this article would have less votes if that's the only thing that identified the writer.

The same is true for comments... the author is included, but the username isn't given the same weight as the comment itself. And I think that's a good thing... we should keep it that way for comments and for articles.

To be fair, I also use the domain somewhat, though I use it more on Reddit to avoid sites like Alternet. The domain helps me avoid sites, but I don't think it has as much effect in helping me affirm sites.


I admire your idealism.


I think the name was meaningful in this case, and that this is true in most cases.

I'm not especially interested in a random person's thoughts on Go. I may be interested in their thoughts on Go if their post happens to make it to the top of YC: this probably indicates that they have something interesting to say. And I'm also interested in their thoughts on Go if they're someone who is a recognised as an authority in the field, as is the case with Bram Cohen. Or: I might be interested if they have a history of writing good posts.

So names in titles do usually convey useful information for me. (Even if I don't recognise it, the fact that the submitter used a name is informative.)


I'm ok with it if the name of the author is not already in the domain name. It helps to spend your time useful.

Otherwise (like in this case) it is redundant.


It makes sense as the title; it provides context. On Bram's site, using the title "Bram Cohen: Comments on Go" would be redundant. If you're already reading his blog, then you know every entry is by him.

When his entry is mixed in with the rest of the internet, his title has no context. Putting his name in the title provides the context.


Why is biased judgement of voting and clicking bad? That should give a list of links that more closely reflects the likes of the readers of the site.

In this case, I agree it is unnecessary and redundant because the blog already carries the author's name.


Nice rant, however, I submitted this using the YC bookmarklet. :) No subtle manipulation of Hacker News intended. Hopefully democracy will still be intact after this serious infraction.


I didn't mean to impugn your motives... just saying I don't think it's a good thing to do in general.

Also, I'm not familiar with the bookmarklet. Does that auto-generate the titles or something?


No, you can edit the title of the submission like for a regular submission.


You can still edit the title, it's easy.


"... really wish people wouldn't include the name of the author in the title. ..."

I'd agree but only because the name is usually redundant when the domain name is shown.




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

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

Search: