Hacker News new | ask | show | jobs
Loop Recognition Benchmarks in C++, Java, Go, Scala (2011) [pdf] (days2011.scala-lang.org)
43 points by saltcookie 4352 days ago
6 comments

the go side of that paper should be accompanied by this link, always:

http://blog.golang.org/profiling-go-programs

> Go and Scala have powerful type inference, making explicit type declarations very rare. In C++ and Java everything needs to be declared explicitly.

I guess they forgot about C++11's auto?

And "powerful type inference"? For Go? Doesn't it just do local implicit typing using the RHS type straight as the LHS's?
This is really old. C++, Java are mature languages. Scala hit 2.11 in March 2014, while Go version 1 was released in March 2012 and currently is at 1.3. Versions don't tell the whole story, but they do matter.
On the other hand, this:

  // Step d:
  IntList::iterator back_pred_iter = back_preds[w].begin();
  IntList::iterator back_pred_end = back_preds[w].end();
  for (; back_pred_iter != back_pred_end; back_pred_iter++) {
    int v = *back_pred_iter;
    …
can now be written

  for (auto v : back_preds[w]) {
    …                                ,
hence you could argue that while C++ is certainly “mature” in a sense, it is far from converged.
While this tells a somewhat similar story, comparing web frameworks to the languages themselves is apples to oranges.
Needs a 2011 tag.
Yes, and the title was rewritten as well [1].

Submitters: please use an article's title unless it is linkbait or misleading [2].

1. Submitted title was "Google Publishes C++, Go, Java and Scala Performance Benchmarks"

2. https://news.ycombinator.com/newsguidelines.html

IMO the title is misleading, and the submitted title is better. Though "Google Researcher Publishes..." would more accurately state its provenance.

The algorithm encoded in the benchmark is loop recognition, but the purpose of the paper is to benchmark the languages, not to find loops.

Ok, thanks. We added "Benchmarks" to the title.
http://readwrite.com/2011/06/06/cpp-go-java-scala-performanc...

this is the real artical, which just points to the pdf

That is true, i don't understand y some one changed the tittle
and this phrase on page 7 highlighted

    The benchmarking itself was done in a simple and 
    fairly un-scientific fashion.

    ... older Pentium IV workstation. Run-times were
    measured using wall-clock time.
but still a good read about tweaking c++ (I think at the time, clang and gcc were still implementing the C++11 standard features).

Also i remember long HN threads about this in mid 2011 but i can't find them, here'a a later discussion https://news.ycombinator.com/item?id=4539668

yes - 2011

http://research.google.com/pubs/pub37122.html

Venue : Proceedings of Scala Days 2011

Publication Year: 2011