What is a good high level language that is also highly efficient?
However, I've recently become interested in some problem domains that are usually best approached by more low-level languages, which provide the maximum level of memory efficiency and performance, as well as suitability for raw binary operations. Unfortunately, having been thoroughly spoiled by managed memory and strong typing, I break out in hives at the thought of undertaking an extensive project in C or C++.
So what are some good languages for this? D is interesting, but I'm a bit turned off by its lack of support for concurrency. Haskell can theoretically work in this domain, but it appears that it's quite difficult to reason about its performance without an inordinate level of understanding of its implementation details. Go looks interesting, but I haven't had a chance to explore it deeply yet (it's on my list.)
Are there any other options in this space?
5 comments
[ 3.0 ms ] story [ 23.8 ms ] threadOCaml has a small but strong following in the financial services world -- it's used by algorithmic traders, who are known to be performance-sensitive, to put it mildly. And Standard ML has the MLton whole-program optimizing compiler.
I have to qualify this by adding that I haven't used either of these tools myself, but for certain kinds of problems, I would definitely give them a closer look.