Series · 2 parts

The cost of an abstraction

What a wrapper, a pipeline or a proxy costs is a property of the call site, not of the abstraction. Five articles measuring the difference.

10 min read

Start with part 1
  1. Part 01 · Runtime

    The Cost of Optional

    Identical source, five call sites, one JDK 26 run - nothing allocated at the first and twelve bytes at three others. The wrapper is not what decides.

    5 min read

  2. Part 02 · Runtime

    Streams Versus Loops: What the JIT Sees

    The same pipeline cost 7.05 times the loop over eight elements and 1.31 times over a million. The ratio everyone quotes is a measurement at a trip count.

    5 min read

Other series

All series
  • 4 parts

    Reading the runtime

    Articles about the signals a running JVM already emits, and how to read them without guessing.

  • In preparation

    The JVM in a container

    What the runtime detects about a cgroup, the defaults it derives from that, and the footprint those defaults produce.

  • In preparation

    Threads in production

    Structured concurrency, scoped values, pool sizing and backpressure, in the request path rather than in the specification.

Search the site

Arrow keys to move, Enter to open.