vectorize a one parameter function.
import { assertLessOrEqual as assertLe, assertGreaterOrEqual as assertGe,} from "jsr:@std/assert"const abs = (v: number): number => (v >= 0 ? v : -v)const arr = new Float32Array(10_000).map(() => 100 * (Math.random() - 0.5))vectorize1(abs, arr, arr) // `arr` is now filled with absolute valued random numbersconst average_of_arr = arr.reduce((cumulative_sum, value) => (cumulative_sum + value), 0) / arr.lengthassertLe(average_of_arr, 30.0)assertGe(average_of_arr, 20.0) Copy
import { assertLessOrEqual as assertLe, assertGreaterOrEqual as assertGe,} from "jsr:@std/assert"const abs = (v: number): number => (v >= 0 ? v : -v)const arr = new Float32Array(10_000).map(() => 100 * (Math.random() - 0.5))vectorize1(abs, arr, arr) // `arr` is now filled with absolute valued random numbersconst average_of_arr = arr.reduce((cumulative_sum, value) => (cumulative_sum + value), 0) / arr.lengthassertLe(average_of_arr, 30.0)assertGe(average_of_arr, 20.0)
vectorize a one parameter function.
Example