Skip to content

v0.6.7 -- SH base-object redesign

Choose a tag to compare

@djdarcy djdarcy released this 20 Jun 17:48
96d4875

The 0.6.x line completes the Scarcity-Hypothesis-grounded base-object redesign: the recursive ladder Unified → Groupable → Continuum → ContinuumSpace, closed under composition, with the four-quadrant wheel and the state/transition machinery built on top. The bedrock now ships the bones every dazzle-* library and aggregator composes on — pure, stdlib-only, side-effect-free by charter.

Highlights

  • ContinuumSpace is closed under composition (0.6.0) — a dimension may be a Continuum or a ContinuumSpace; compose() yields a space and normal_form() folds nesting to the flat leaf product. {Continuum, ContinuumSpace, compose} is complete the way {+, ×, ^} is. Alignment became a property, not a requirement: an aligned space carries one merged presence spectrum; a product space holds independent, differently-scaled axes and refuses cross-axis navigation by design (scale-safety). is_aligned reports which.
  • The ladder floor (0.6.1) — Groupable (the {minus, plus} dual that is an axis's bounds) + Unified (the 0_ag pre-cut form, implicitly a Groupable). Invertibility is the floor; nothing is one-way.
  • Continuum bridges (0.6.2) — poles(), densify_between() (insert a named rung at the mediant Fraction), Continuum.from_groupable(), and the RungValue alias. Method-additive; un-densified continua stay byte-identical.
  • The four-quadrant wheel (0.6.3) — ContinuumSpace.quadrants(a1, a2) → QuadrantView: the SH-cycle four-phase wheel as a pairwise view over any two axes of the N-ary space (never a structural 2-axis limit). quadrants() / hidden_at() / agreement_diagonal() / disagreement_diagonal() / tau_steps().
  • Transition.kind (0.6.4, fixed 0.6.6) — the lateral / generative / one-way / refused vocabulary bridge over the existing Reversibility, with a completeness guard so a new member can't go unmapped.
  • Serialization floor (0.6.5) — to_dict/from_dict + SCHEMA_VERSION on Groupable + Unified (lossless round-trip).
  • The inward/outward symmetry (0.6.7) — Continuum.fibers (a per-rung INWARD sub-structure) + the unified children() / walk() / fold(): one child-relation, total over the ladder (a space's children are its axes OUTWARD, a continuum's are its fibers INWARD, a Groupable/Unified is a leaf). The recursive core, finalized.

Compatibility

  • Backward-compatible — the aligned-spectrum path and existing primitives are byte-identical; new capabilities are method/field-additive (empty defaults).
  • Charter-pure — stdlib-only, no I/O, no effects (enforced by tests/test_charter.py).

Docs

  • docs/the-ladder.md — the base-object model (Unified/Groupable/Continuum/ContinuumSpace, aligned vs product, the signed invariant-bearing zero, fibers).
  • docs/the-quadrant-wheel.mdQuadrantView + the polar/quadrant geometry it projects.

Full changelog: see CHANGELOG.md (0.6.0 → 0.6.7).