1023 Commits

Author SHA1 Message Date
Brummel 7c95a69780 floats iter 1.3: bit-stability tests for Literal::Float 2026-05-10 14:45:34 +02:00
Brummel 93bae2d02a floats iter 1.2 fixup: replace iter-N comment with durable rationale for explicit assertions 2026-05-10 14:44:14 +02:00
Brummel aa5b88e8d4 floats iter 1.2: register Float as a primitive type name 2026-05-10 14:42:23 +02:00
Brummel 93fe2da33c floats iter 1.1 fixup: trim form_a.md FLOAT bullet to match neighbour style 2026-05-10 14:40:16 +02:00
Brummel ec2811194b floats iter 1.1: Literal::Float variant + canonical hex serde + drift-test anchors 2026-05-10 14:36:08 +02:00
Brummel cdc9d64169 plan: floats iter 1 — schema layer (Literal::Float + canonical hex serde + primitive registration) 2026-05-10 14:26:17 +02:00
Brummel e37366f8dd spec: floats LLVM-IR fixes — fcmp une for !=, synth.rs sites, container-slot precision
Three classes of fix from the LLVM-IR audit:

1. != on Float: fcmp une, NOT fcmp one. one is 'ordered and not
   equal' (false for nan!=nan, breaks IEEE / user-fixed constraint).
   une is 'unordered or not equal' (true for nan!=nan, matches IEEE
   and Rust f64::ne).

2. crates/ailang-codegen/src/synth.rs touches the Float primitive at
   five sites the original spec missed: llvm_type, builtin_ail_type,
   builtin_effect_op_ret, type_descriptor (descriptor 'Fl' to avoid
   collision with ADT-name F-prefix), builtin_binop (becomes a
   transitional artefact, replaced by type-dispatched helper).

3. Float literals lower as LLVM hex-float syntax (double 0x4014...);
   nan/inf/neg_inf as direct SSA double constants at use site (NOT
   via the __unreachable__ analogue, which is a terminator
   instruction not a value); container slot layout precision
   (monomorphisation vs bitcast).
2026-05-10 14:14:54 +02:00
Brummel f7e2c3ee7a spec: floats — operators polymorphic over {Int, Float} + NaN/Inf constants + is_nan
Mainstream-aligns the Float surface: + - * / < <= > >= become
forall-quantified with codegen-dispatch on Int|Float (parallel to
today's == path), instead of the original draft's wort-style
fadd/flt/etc. Adds nan/inf/neg_inf as builtin constants and
is_nan : (Float) -> Bool. % stays Int-only (no fmod yet).

Iteration plan now flags iter 3 and iter 4 as widening passes
that must hold the no-Int-regression line.
2026-05-10 14:08:35 +02:00
Brummel 406bde0efc spec: floats milestone — Float as IEEE-754 binary64 primitive 2026-05-10 13:54:55 +02:00
Brummel b523ceb18d design-md-consolidation: audit close — JOURNAL entry + 3 follow-up items in roadmap (rustdoc sweep, architect-iron-law extension, drift-test fidelity widening) 2026-05-10 13:21:43 +02:00
Brummel 63df0c085c design-md-consolidation audit-tidy: close 3 architect drift items (Def kinds class/instance + Type::Forall constraints + letrec correction) 2026-05-10 13:20:40 +02:00
Brummel c6e433321e design-md-consolidation 4: journal entry + milestone close + roadmap mark done 2026-05-10 13:14:51 +02:00
Brummel e68d927e5a design-md-consolidation 4.4 fixup: drop 'Sharpened later the same day' temporal anchor + supplementary 'see closure conversion in JOURNAL' pointer 2026-05-10 13:10:45 +02:00
Brummel 49fc6738ba design-md-consolidation 4.4: cross-ref audit — JOURNAL queue → roadmap.md; bench pointers retained as binding-evidence anchors 2026-05-10 13:09:16 +02:00
Brummel 1605be75cb design-md-consolidation 4.3: drop 'Recently lifted gates' history paragraph from §What-is-not-yet-supported 2026-05-10 13:07:38 +02:00
Brummel 127a34a21b design-md-consolidation 4.2: strip ailang-docwriter agent workflow detail from Verification section; rule survives 2026-05-10 13:06:10 +02:00
Brummel 96270ced35 design-md-consolidation 4.1: fix Project-ecosystem stale agents/ path; expand Docs bullet to name roadmap.md + specs/ + plans/ 2026-05-10 13:04:03 +02:00
Brummel 9185014022 plan: design-md-consolidation 4 (workflow / cross-reference cleanup — final sweep) 2026-05-10 13:03:01 +02:00
Brummel af2064af6e design-md-consolidation 3: journal entry + roadmap sweep-3 closed 2026-05-10 12:58:54 +02:00
Brummel e21f264b93 design-md-consolidation 3.4 nit: drop task-ref doc-comment prefix + align def-kind list with lowercase tags 2026-05-10 12:57:11 +02:00
Brummel 934a6e18e6 design-md-consolidation 3.4 fixup: align DESIGN.md ClassDef/InstanceDef JSON tags with ast.rs lowercase serde rename 2026-05-10 12:53:36 +02:00
Brummel 4651fed5b7 design-md-consolidation 3.4: add design_schema_drift.rs — exhaustive-match drift test for ast.rs vs DESIGN.md §Data-model 2026-05-10 12:51:39 +02:00
Brummel e5d1c1e33b design-md-consolidation 3.3: ast.rs doc-comment names DESIGN.md §Data-model as canonical schema, drift test as enforcement 2026-05-10 12:48:21 +02:00
Brummel ac16100319 design-md-consolidation 3.2: invert §Data-model SoT — DESIGN.md canonical, ast.rs projection, drift test enforces 2026-05-10 12:46:15 +02:00
Brummel a100389c2f design-md-consolidation 3.1: remove 2 Rust code blocks from Decision 10 (Type::Fn + Suppress) — schema lives in §Data-model 2026-05-10 12:43:49 +02:00
Brummel 500aafb307 plan: design-md-consolidation 3 (schema SoT inversion + data-model hardening + drift test) 2026-05-10 12:42:35 +02:00
Brummel a5a101a010 design-md-consolidation 2: journal entry + roadmap sweep-2 closed 2026-05-10 12:37:21 +02:00
Brummel 4f47dbfeb1 design-md-consolidation 2.5: future-iter speculations — remove aspirations, tighten binding prohibitions 2026-05-10 12:34:21 +02:00
Brummel 774886bb37 design-md-consolidation 2.4: condense Decision 11 mono-vs-vdisp correction history to state-only rationale 2026-05-10 12:31:37 +02:00
Brummel 38d357d58a design-md-consolidation 2.3: delete Decision 10 §Migration plan (7-point completed-iter list) 2026-05-10 12:29:54 +02:00
Brummel 2539b0e728 design-md-consolidation 2.2: condense Decision 9 narrative-of-changes opener + drop pre-Decision-9 history paragraphs 2026-05-10 12:27:51 +02:00
Brummel 86fd5dec0b design-md-consolidation 2.1 fixup: replace orphaned Decision 7 cross-reference at DESIGN.md:1141-1144 2026-05-10 12:25:26 +02:00
Brummel a3406394c2 design-md-consolidation 2.1: delete Decision 7 (Term::If REVERTED block) 2026-05-10 12:23:49 +02:00
Brummel c352de8117 plan: design-md-consolidation 2 (REVERTED + migration + correction-history + future speculations) 2026-05-10 12:22:30 +02:00
Brummel 7863f73b84 design-md-consolidation 1: journal entry + roadmap sweep-1 closed 2026-05-10 12:17:35 +02:00
Brummel 172b974c9a design-md-consolidation 1.5 fixup: untangle line 863 run-on, deduplicate JOURNAL attribution, idiomatic 'larger still' 2026-05-10 12:14:56 +02:00
Brummel 44fe4384fc design-md-consolidation 1.5: condense historical bench data-points in DESIGN.md 2026-05-10 12:11:40 +02:00
Brummel 152e4efa28 design-md-consolidation 1.4 nit: deduplicate 'fixture' word in user-class parenthetical 2026-05-10 12:09:36 +02:00
Brummel 613d4d8c0f design-md-consolidation 1.4 fixup: strip bare iter-id references (~16 sites) 2026-05-10 12:07:22 +02:00
Brummel 008b7924e3 design-md-consolidation 1.4 fixup: strip non-Iter-N iter anchors (14b sketch, pre-19b, pre-22a) 2026-05-10 12:00:03 +02:00
Brummel ba94d7240f design-md-consolidation 1.4: drop Iter-N tags from DESIGN.md 2026-05-10 11:58:22 +02:00
Brummel 41c834008f roadmap: drop per-task progress count from Sweep 1 entry
The "tasks 1-3 of 6 landed" snapshot ages out with every
sub-commit; the plan's own checkboxes are the live source.
Roadmap entry now just carries `[~]` + a pointer to the plan.
2026-05-10 11:51:48 +02:00
Brummel ecc00fed8a roadmap: introduce docs/roadmap.md as forward queue
Adds a priority-ordered, checkbox-format roadmap that the
orchestrator maintains. Three states (`[ ]` open / `[~]` in
progress / `[x]` done), four kinds (milestone / feature / todo /
idea), four priorities (P0..P3). Initial population lifts the
queued items from the JOURNAL tail.

JOURNAL's role narrows: chronological decisions log only, no
forward queue. CLAUDE.md "Roles of ..." section updated to
reflect the split.
2026-05-10 11:49:44 +02:00
Brummel 18fc014377 design-md-consolidation 1.3 fixup: repair two date-strip quality issues 2026-05-10 11:48:39 +02:00
Brummel 4b10ee4a5f design-md-consolidation 1.3: drop date anchors from DESIGN.md 2026-05-10 11:46:14 +02:00
Brummel ef8c983720 design-md-consolidation 1.2 fixup: trim trailing whitespace on DESIGN.md:33 2026-05-10 11:43:41 +02:00
Brummel e6821d873d design-md-consolidation 1.2: drop Family-N tags from DESIGN.md 2026-05-10 11:42:07 +02:00
Brummel f2c4b400a8 design-md-consolidation 1.1: drop **Status:** markers from DESIGN.md 2026-05-10 11:40:03 +02:00
Brummel b2a0b05215 plan: design-md-consolidation 1 (history anchors) 2026-05-10 11:38:12 +02:00
Brummel aa02ea1d2b spec: design-md-consolidation — state-only DESIGN.md, four sweeps 2026-05-10 11:33:19 +02:00