> Maybe the question is, is Ruby the best language to choose from when
> performance deleting/adding elements in a Array is important for you?

For that you simply switch algorithms. Using MetaRuby you can implement
the backend of an Array class such that it holds sqrt(N) arrays of sqrt(N)
elements (on average), which would reduce splice-time from N to sqrt(N). 

Using a binary tree backend you could lower that to log(N), but that
also changes get/put to log(N).

> Some time ago, I implemented some existing C++ code of mine which performs
> learning on neural networks (yes I was working in Japan when I originally
> wrote that) in Ruby. Roughly, the Ruby version runs 100 times slower than
> the C++ version. (I may not be aware of all tricks I should use to speed
> up data processing Ruby code)

You should use NArray for that. You can reach C-like performance
by passing NArray objects instead of individual values, wherever
you do a simple #each loop. Then you remove the #each loops and it works.

NArray is basically the APL language in a library for Ruby.

matju