
from std13
An arena-first C++ design philosophy: use a single ObjPool to own related objects, favour interface pointers, and prefer pool-allocated containers for predictab
This skill documents an arena-first design philosophy for C++ systems: allocate related objects from a single ObjPool, prefer interface pointers in headers, and keep allocation and lifetime decisions local to the owning pool. It gives concrete rules for containers, strings, error handling, and composition so teams can design subsystems that are fast, memory-local, and easy to reason about.
Use when designing or reviewing a subsystem with many small objects, when you need predictable allocation patterns for latency-sensitive code (servers, request handlers), or when reducing build-time dependencies matters. Triggered by code-design discussions: 'how should this subsystem own objects?', 'avoid std::vectorstd::string here', or 'reduce heap allocations for request paths.'
Good for code-design and review agents (Copilot/Code assistants, Codex-like tools, Claude/Codex/Gemini-style code reviewers) that can suggest refactors or apply the pattern to existing code.
Arena-first C++ design philosophy skill with no bundled scripts. Pure documentation skill encoding a single ObjPool ownership model. Well-structured with clear decision trees, anti-patterns, and sanity checks. Very niche audience but thorough for that audience. No security concerns — purely instructional.
Clean documentation-only skill. No executable code to audit. Well-written with specific, unambiguous triggers and comprehensive guidance. The philosophy is coherent and internally consistent.