There's a quiet assumption in developer circles that statically typed languages are the responsible choice for AI-assisted coding, and this benchmark by Ruby committer Yusuke Endoh challenges that assumption head-on. Across 600 runs and 13 languages, dynamic languages like Ruby, Python, and JavaScript consistently delivered the fastest and cheapest results when working with Claude Code, at $0.36 to $0.39 per run. Statically typed languages, by contrast, cost 1.4 to 2.6 times more. That's not a rounding error. That's a signal.
What makes this benchmark particularly useful is its grounding in a realistic task: implementing a simplified Git. This wasn't a toy exercise or a micro-optimization contest. It was a genuine, multi-step software engineering problem where the language choice had a measurable effect on both speed and cost. For teams evaluating AI coding tools, this matters more than any marketing claim about model capability. The tool doesn't just respond to your code; it responds to the language you're using. And right now, dynamic languages are letting Claude Code do more work for less money.
The type checker trade-off is where the story gets more interesting. Adding type checkers to dynamic languages slowed things down by 1.6 to 3.2 times. That doesn't mean type checkers are bad, or that static typing is pointless. It means there's a real cost to the extra safety net, and it's a cost that becomes visible in AI-assisted workflows. If you're using type checking as a guardrail, you should know it's not free. But if you're using it out of habit, or because "real" engineering demands it, this benchmark is a reason to question that instinct. The data suggests that for many practical tasks, the dynamic approach isn't just viable. It's optimal.
The practical takeaway for developers is straightforward: don't let language dogma dictate your AI tooling decisions. Run your own benchmarks, on your own codebase, with your own prompts. The full dataset is on GitHub, and Endoh's methodology is transparent enough to replicate. Start there. Test a dynamic language you've been avoiding. Measure the cost per run, not just the elegance of the type system. You might find that the language you thought was too loose is actually the one that lets Claude Code move fastest. And in a world where every token has a price, speed and savings are the features that matter most.
