Despite my best efforts, there are frictions associated with cross platform initiatives.

In javascript

const arr = new Float64Array(2)
arr[10]

will result in undefined, and your program will continue onwards with essentially undefined future behaviuor.

This is materially different to the behaviour on the JVM and native arrays, which are going to throw ArrayOutOfBounds or some similar exception letting you know things have gone wrong. Whilst enabling this exception throwiung behaviour is possible in scalaJS (use Array[Double]) , it comes with a performance impact.

It is an explicit goal of vecxt to be performant, and to introduce as few abstractions as possible. We make no effort to solve this problem in JS land.