{
  "meta": {
    "version": "1.0",
    "published": "2025-03-01",
    "hardware": "AMD Ryzen 9 5900X, 32GB DDR4, NVMe SSD",
    "methodology": "Each benchmark runs 1,000,000 iterations using each language's standard timing utility. Code is available at https://github.com/eduht-online/benchmarks",
    "languages_tested": ["python", "javascript", "go", "rust", "java"]
  },
  "benchmarks": [
    {
      "id": "array-sum",
      "name": "Sum of 1,000 integers",
      "description": "Sum all integers in a pre-populated array/list of 1000 elements",
      "results": [
        { "language": "Rust",       "version": "1.82",     "ms_per_million": 0.31,  "notes": "Release build, iterator sum" },
        { "language": "Go",         "version": "1.23",     "ms_per_million": 0.44,  "notes": "Compiled binary" },
        { "language": "Java",       "version": "21 LTS",   "ms_per_million": 0.61,  "notes": "JIT-warmed, IntStream sum" },
        { "language": "JavaScript", "version": "Node 22",  "ms_per_million": 1.12,  "notes": "V8 JIT, reduce()" },
        { "language": "Python",     "version": "3.13",     "ms_per_million": 4.87,  "notes": "CPython, sum()" }
      ]
    },
    {
      "id": "string-concat",
      "name": "String concatenation — 100 items",
      "description": "Join 100 short strings into one string",
      "results": [
        { "language": "Rust",       "version": "1.82",     "ms_per_million": 0.52 },
        { "language": "Go",         "version": "1.23",     "ms_per_million": 0.71 },
        { "language": "Java",       "version": "21 LTS",   "ms_per_million": 0.94 },
        { "language": "JavaScript", "version": "Node 22",  "ms_per_million": 1.55 },
        { "language": "Python",     "version": "3.13",     "ms_per_million": 6.22 }
      ]
    },
    {
      "id": "sort-integers",
      "name": "Sort 10,000 integers",
      "description": "Sort a randomly ordered array of 10,000 integers",
      "results": [
        { "language": "Rust",       "version": "1.82",     "ms_per_million": 2.11 },
        { "language": "Java",       "version": "21 LTS",   "ms_per_million": 2.88 },
        { "language": "Go",         "version": "1.23",     "ms_per_million": 3.02 },
        { "language": "JavaScript", "version": "Node 22",  "ms_per_million": 3.47 },
        { "language": "Python",     "version": "3.13",     "ms_per_million": 9.14 }
      ]
    },
    {
      "id": "hashmap-lookup",
      "name": "HashMap / dict lookup — 1M operations",
      "description": "1,000,000 random key lookups in a pre-populated map of 100,000 entries",
      "results": [
        { "language": "Rust",       "version": "1.82",     "ms_per_million": 0.18 },
        { "language": "Go",         "version": "1.23",     "ms_per_million": 0.27 },
        { "language": "Java",       "version": "21 LTS",   "ms_per_million": 0.39 },
        { "language": "JavaScript", "version": "Node 22",  "ms_per_million": 0.61 },
        { "language": "Python",     "version": "3.13",     "ms_per_million": 1.04 }
      ]
    }
  ]
}
