Loop Recognition Benchmarks in C++, Java, Go, Scala (2011) [pdf](days2011.scala-lang.org)
days2011.scala-lang.org
Loop Recognition Benchmarks in C++, Java, Go, Scala (2011) [pdf]
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
6 comments
> 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?
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.Discussion from 2011
https://news.ycombinator.com/item?id=2615096
https://news.ycombinator.com/item?id=2615096
benchmark - now 2014 : http://www.techempower.com/benchmarks/
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
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.
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
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
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
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
http://research.google.com/pubs/pub37122.html
Venue : Proceedings of Scala Days 2011
Publication Year: 2011
http://blog.golang.org/profiling-go-programs