News for hackers. Stuff that matters.
Re:When Rust Makes Sense, or The State of Typed Languages by skimpycompiler on Monday September 28, 2015 @10:33AM (#10290630)
Yes, it performs well, but not as well as it could. Would a matrix expression in breeze be matched by one of the fused functions of LAPACK (performing A*B+C in one pass)? I'm not sure of that.

If you needed to squeeze the last bits out of your hardware you would have to waste more time. That's my main complaint. As verbose as C++ is I still can't make stuff perform as best as it could in Haskell/Scala/Java without spending more time (much more than it would take me to fix in C++).

All of the languages are nice to work with but for some reason the more you distance yourself from the data representation in your memory (with references, boxes etc.) larger the time you have to spend to makes things fast, and all of those abstractions that saved you time, now turn out to be the overhead you don't want, and all of those abstractions now need to go away.

I guess value types might change the thing for Java and other JVM languages. Can't wait to see how successful it'll be.

Re:When Rust Makes Sense, or The State of Typed Languages by lmm on Monday September 28, 2015 @02:39PM (#10292138)
> Would a matrix expression in breeze be matched by one of the fused functions of LAPACK (performing AB+C in one pass)?

The function's certainly there. I don't think it will automatically collapse an AB+C operation (though there's no reason that can't be implemented), but you wouldn't get that in C++ either (or rather, the template-fu needed to achieve it there would be harder than doing it in Scala).

> All of the languages are nice to work with but for some reason the more you distance yourself from the data representation in your memory (with references, boxes etc.) larger the time you have to spend to makes things fast, and all of those abstractions that saved you time, now turn out to be the overhead you don't want, and all of those abstractions now need to go away.

Yes and no. I'll grant that it's very rare to find a language that's better than another in every conceivable circumstance. But there's no law that abstractions have to be expensive (I guess that's part of the point of Rust). And even when they do come with a cost, computers get cheaper and programmers get more expensive.