Files
lux/benchmarks/quicksort.js
Brandon Lucas 42fef80a47 feat: add comprehensive benchmark suite with multi-language comparison
Add benchmarks comparing Lux against 7 languages:
- Rust, C, Go (compiled)
- Node.js, Bun (JavaScript JIT)
- Python (interpreted)

Benchmarks:
- Fibonacci (fib 35): recursive function calls
- Prime counting (10k): loops and conditionals
- Sum loop (10M): tight numeric loops
- Ackermann (3,10): deep recursion
- Selection sort (1k): sorting algorithm
- List operations (10k): map/filter/fold with closures

Results show Lux:
- Matches C and Rust performance
- 2-5x faster than Go
- 7-15x faster than Node.js
- 10-285x faster than Python

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-14 16:17:06 -05:00

15 lines
510 B
JavaScript

// Quicksort benchmark - sorting algorithm
function quicksort(arr) {
if (arr.length <= 1) return arr;
const pivot = arr[0];
const rest = arr.slice(1);
const less = rest.filter(x => x < pivot);
const greater = rest.filter(x => x >= pivot);
return [...quicksort(less), pivot, ...quicksort(greater)];
}
// Sort 1000 random-ish numbers
const nums = Array.from({length: 1000}, (_, i) => (i * 7 + 13) % 1000);
const sorted = quicksort(nums);
console.log(`Sorted ${sorted.length} elements`);