Skip to content

Benchmarks: Wyn vs Go vs Python

January 2026

We ran benchmarks against Go 1.23 and Python 3.12 on an M2 MacBook Air. All source code is in the benchmarks/ directory of the repo. Run them yourself with cd wyn/benchmarks && ./run.sh.

These are not cherry-picked. We picked common tasks and measured what happened.

Fibonacci(35) — recursive, no memoization

LanguageTimeNotes
Wyn52msTCC backend
Wyn (release)48mssystem cc -O3
Go57msgo build
Python3,200msCPython 3.12

Wyn and Go are in the same ballpark. Python is 60x slower, which is expected for tight recursive loops.

Spawn/goroutine 1M tasks

Fire off a million concurrent tasks that each increment a counter.

LanguageTimePeak Memory
Wyn247ms2 MB
Go279ms12 MB

Wyn's coroutines use 16KB stacks (pooled) vs Go's 8KB (growing). The work-stealing scheduler with batch stealing keeps things competitive. The memory difference is significant — 6x less for Wyn.

String concatenation (10K iterations)

Build a string by appending in a loop.

LanguageTime
Wyn19ms
Go15ms
Python8ms

Go and Python both have optimized string builders. Wyn's arena allocator handles this reasonably but there's room for improvement with a dedicated StringBuilder path.

Binary size — hello world

LanguageSize
Wyn32KB
Go2.3MB
Rust300KB
PythonN/A (30MB runtime)

Wyn compiles to C and links only what's used. Dead code stripping gets hello world down to 32KB.

Compilation speed

LanguageTime
Wyn (TCC)260ms
Wyn (release)220ms
Go~500ms
Rust5-30s

TCC is the secret weapon for development iteration. Release builds use the system compiler with -O3.

What we're not claiming

Wyn is not faster than Go at everything. String handling is slower. We don't have a JIT. Our generics are basic. The garbage collector is an arena allocator, which means long-running servers need System.gc() calls or the HTTP handler's automatic arena reset.

The point isn't to be the fastest. It's to be fast enough while being simpler to write, build, and deploy.

All benchmark source code: github.com/wynlang/wyn/tree/main/benchmarks

MIT License