heres the benchmark results for 1000000: scratch: 1.8 seconds scratch (turbowarp): 0.2 seconds javascript (spidermonkey, js runtime used by firefox): 0.003 seconds javascript (V8, js runtime used by chrome): 0.004 seconds C++ (clang++ no optimizations): 0.0007 seconds C++ (clang++ all symbols stripped): 0.001 seconds C++ (clang++ O3 optimizations): 0.0000001 seconds C++ (clang++ O3 optimizations, all symbols stripped): 0.0000001 seconds C++ (g++ no optimizations): 0.001 seconds C++ (g++ all symbols stripped): 0.0006 seconds C++ (g++ O3 optimizations): 0.0000002 seconds C++ (g++ O3 optimizations, all symbols stripped): 0.0000002 seconds C (clang no optimizations): 0.0006 seconds C (clang all symbols stripped): 0.003 seconds C (clang O3 optimizations): 0.000008 seconds C (clang O3 optimizations, all symbols stripped): 0.000007 seconds C (gcc no optimizations): 0.001 seconds C (gcc all symbols stripped): 0.002 seconds C (gcc O3 optimizations): 0.000004 seconds C (gcc O3 optimizations, all symbols stripped): 0.000006 seconds