Jeffrey M. Barber

Tombstone

ZSL

Jan 2002 โ€“ Feb 2003 ยท age 20โ€“21

What it was

The "Zenerd Standard Library", version 0.340: three thousand lines of C++ a game programmer builds before the game. A vector, matrix and quaternion core. Geometry for spheres, planes, rays, boxes and squares, with swept tests that solve a quadratic in time to say when a moving sphere enters and leaves a plane or another moving sphere. A compacting heap reached through handles. Octrees and quadtrees whose objects climb only as far as they must when they move. An integer radix sort, and a float one that remaps IEEE bits so floats sort as unsigned integers. Every declaration carried a one-line Doxygen brief, and a generated manual shipped with it. Its last build reported "up-to-date" and changed nothing.

Wins, for the age

What it taught

Genealogy

Ancestors: Z Character Exhibitor: the editor that first linked this library in place of older ones. Descendants: Cauldron v1: the engine the library was waiting for, with SSE math. Rage: the engine experiments built on hand-rolled math. Vec4U: vector algebra, turned into a typed language compiling to SSE.

Epitaph

Here lies ZSL, which could sweep a sphere through a plane and sort a million floats in four passes, and whose OCaml is still there above the C++, waiting to be read.