

Loop Recognition Benchmarks in C++, Java, Go, Scala (2011) [pdf] - saltcookie
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf

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

[http://blog.golang.org/profiling-go-
programs](http://blog.golang.org/profiling-go-programs)

------
dcsommer
> 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?

~~~
masklinn
And "powerful type inference"? For Go? Doesn't it just do local implicit
typing using the RHS type straight as the LHS's?

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

~~~
claudius
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.

------
igouy
Discussion from 2011

[https://news.ycombinator.com/item?id=2615096](https://news.ycombinator.com/item?id=2615096)

------
pella
benchmark - now 2014 :
[http://www.techempower.com/benchmarks/](http://www.techempower.com/benchmarks/)

~~~
broodbucket
While this tells a somewhat similar story, comparing web frameworks to the
languages themselves is apples to oranges.

------
kasey_junk
Needs a 2011 tag.

~~~
dang
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](https://news.ycombinator.com/newsguidelines.html)

~~~
barrkel
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.

~~~
dang
Ok, thanks. We added "Benchmarks" to the title.

~~~
saltcookie
[http://readwrite.com/2011/06/06/cpp-go-java-scala-
performanc...](http://readwrite.com/2011/06/06/cpp-go-java-scala-performance-
benchmark)

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

