Would You Bet $100,000,000 on Your Pet Programming Language? (2007)
prog21.dadgum.com
prog21.dadgum.com
As per the OCaml example, you could either change what C type Lua uses for its primary numeric type (it uses doubles by default) or use C userdata (a garbage-collector-managed pointer to a C struct), since the collection of numbers probably has some algorithmically relevant characteristics beyond just being a huge set of numbers.
Many of the author's questions can be reduced to "does it have a good C FFI?", but I'm not sure what the overall point is, or if these are just generalized suggestions to think about before starting a project. I'd like to know what the author would use in this situation.
[0] AMD has announced a 12-core Opteron for next year, so this isn't far-fetched at all.
You can't have strange hardware, and then decide to go with experimental software. Stateless programming can be done in any imperative language, and there are lots of languages that allow you to scale to 20 CPUs, but are very mainstream.
Parallel-Processing is not much easier in functional languages. But optimizing to place specific tasks on specific processors is much easier in low level languages. I'd say your design decision is wrong.
I am curious, because I don't know much about programming language implementations yet, just enough to know what I don't know.