Skip to content

refactor(fspy-nostd-alloc): rename arena to pooled_bump - #672

Draft
wan9chi wants to merge 1 commit into
mainfrom
agent/fspy-pooled-bump-rename
Draft

refactor(fspy-nostd-alloc): rename arena to pooled_bump#672
wan9chi wants to merge 1 commit into
mainfrom
agent/fspy-pooled-bump-rename

Conversation

@wan9chi

@wan9chi wan9chi commented Aug 14, 2026

Copy link
Copy Markdown
Member

Motivation

fspy_nostd_alloc is infrastructure: it should name its exports after their mechanism, not after how its consumers happen to use them. arena() is a bump allocator backed by the process-wide chunk pool, so this renames it to pooled_bump() (and ArenaSettings to PooledBumpSettings), and rewrites the crate docs in the same mechanism-first terms.

pooled_bump() now also returns impl BumpAllocator + Allocator instead of impl Allocator, with the bump-scope trait re-exported: callers get the bump interface (scopes, resets) rather than an anonymous allocator, without taking a direct bump-scope dependency. Groundwork for the payload-view PR on top of this stack, which adds a page-backed sibling with the same signature.

🤖 Generated with Claude Code

@wan9chi wan9chi changed the title agent/fspy pooled bump rename refactor(fspy-nostd-alloc): rename arena to pooled_bump Aug 14, 2026
@github-actions

github-actions Bot commented Aug 14, 2026

Copy link
Copy Markdown

fspy benchmark

linux

dynamic/launch             change  +0.40%  [ -3.66% ..  +5.39%]  overhead   +49.77%
dynamic/access             change  +0.50%  [ -1.57% ..  +1.88%]  overhead    +5.59%
dynamic/access-relative    change  +0.01%  [ -1.74% ..  +1.86%]  overhead   +44.89%
static/launch              change  +0.78%  [ -5.27% ..  +7.33%]  overhead  +146.88%
static/access              change  +0.21%  [ -1.02% ..  +2.05%]  overhead  +836.58%
static/access-relative     change  -0.02%  [ -2.26% ..  +2.84%]  overhead +1344.37%

macos

dynamic/launch             change  +0.63%  [ -3.75% ..  +4.80%]  overhead  +241.15%
dynamic/access             change  +1.30%  [-13.99% .. +40.21%]  overhead    +4.50%
dynamic/access-relative    change  -0.21%  [ -7.30% .. +13.25%]  overhead  +253.41%

windows

dynamic/launch             change  +0.07%  [ -5.11% ..  +4.32%]  overhead   +27.97%
dynamic/access             change  +0.18%  [ -0.92% ..  +1.66%]  overhead    +1.50%
dynamic/access-relative    change  +0.18%  [ -1.63% ..  +1.82%]  overhead    +1.12%

The crate is infrastructure and should name its exports after their
mechanism, not after how its consumers happen to use them: arena() is a
bump allocator backed by the process-wide chunk pool, so call it
pooled_bump() and its settings PooledBumpSettings. The crate docs now
describe the three layers in the same mechanism-first terms.

pooled_bump() also returns impl BumpAllocator + Allocator instead of
impl Allocator, with the bump-scope trait re-exported: callers get the
bump interface (scopes, resets) without a direct bump-scope dependency,
not just an anonymous allocator.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@wan9chi
wan9chi force-pushed the agent/fspy-pooled-bump-rename branch from bc86aab to a21bce3 Compare August 14, 2026 08:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant