Bill Baxter:
>Strange though, aren't you the guy always telling us how being able to express 
>your algorithm clearly is often more important than raw performance?<

Nope. I have said many things :-) One of the things I have said is that most of 
the code of most programs isn't performance-critical, so for the 
non-performance-critical code it's better to have idioms that allow to avoid 
bugs and write in a short and expressive way. Forcing the programmer to write 
all the program in a low level or all of it in a high level way is bad for 
programmer productivity or overall program efficiency.

Also, regarding 'express your algorithm clearly' many of the things inside the 
Chapel language look clear and not too much difficult to learn and use. I have 
compiled the Chapel compiler and I have tried to write some small programs, 
such experiments show me that I am able to write them with not many problems. I 
can learn 20-30% of such language in a matter of hours. So it shows ways to 
have fast data-parallel code that is simple enough to write. For example I am 
trying to implement tiled-based 2D matrix processing in D. It's not an easy 
thing to do in D, if you want to do it efficiently. In Chapel such (basic, for 
efficiency) thing is quite easy, and partially done by the compiler already.

Bye,
bearophile

Reply via email to