diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b47d02..da86015 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,10 +4,39 @@ All notable changes to Coderive are documented in this file. ## [v0.9.0] - Platform Snapshot - April 13, 2026 -### ✨ Major Updates -- **Version bump to v0.9.0** — Updated repository release version to `0.9.0`. -- **README refresh for current platform scope** — Reworked the README to clearly describe what Coderive offers today across language design, lazy range execution, safety model, runtime pipeline, CLI workflows, and docs/playground experience. -- **Release documentation alignment** — Synced changelog and version metadata with the new v0.9.0 release. +### 🔀 Merge Coverage for This Snapshot +- **Linear recurrence refactor/composition and v0.8.4 version alignment** — recurrence formula refactor/composition updates and version alignment work. +- **Rolling/vector recurrence execution improvements** — rolling/vector linear recurrence execution upgrades and related parity-path updates. +- **`.codc` container write/read hardening** — custom zip-container behavior and container stability improvements. +- **Shared index consolidation in project container root** — import index consolidation into project container root entry (`HOOK.toml`). +- **Unit-path structure fixes and deterministic lowering reset** — `.codb`/`.codc` path structure fixes plus deterministic PTAC lowering counter reset behavior. +- **`CommandRunner` full compile mode and summary polish** — `-f`/`--full` support and compile summary output improvements. +- **Borrow-check enforcement for unsafe indexed mutation** — borrow safety checks extended into unsafe indexed mutation paths. +- **Active-borrow tracking performance upgrades** — zero-cost/O(1) active-borrow tracking improvements. +- **Unsafe operation boundary model implementation** — `unsafe` class/method modifier support with enforced `safe(...)` wrapping for calling unsafe operations from safe contexts (direct safe-context calls are rejected). + +### 🚨 Breaking / Behavioral Changes +- **Unsafe declaration ordering enforced** — Unsafe declarations require explicit visibility before `unsafe` (`share unsafe ...` or `local unsafe ...`). + Migration example: `unsafe share MyType { ... }` → `share unsafe MyType { ... }`. +- **Unsafe operation boundary model enforced** — `unsafe` is supported as a class/method modifier, and unsafe constructors/methods must be wrapped with `safe(...)` when called from safe contexts. `safe(...)` is not allowed inside unsafe contexts. +- **Borrow checks tightened in unsafe mutation paths** — Unsafe indexed mutation now participates in borrow-safety enforcement. + +### ✨ Major Features +- **Unsafe pointer model added** — Unsafe contexts support pointer-oriented syntax/runtime behavior (`*T`, `T[n]`, `&`, `*`, and pointer arithmetic with bounds checks). +- **Full-project compile mode in CLI** — `CommandRunner` supports `-f` / `--full` to compile all `.cod` files under `src/main`. +- **O(1) borrow checking via active-borrow tracking** — Borrow-state checking moved from scan-based checks to O(1)-style active tracking for lower runtime overhead. + +### 🔧 Runtime / PTAC / IR Improvements +- **Deterministic lowering register naming** — PTAC lowering counters reset per `lower()` call to keep generated naming stable per artifact. +- **IR path normalization for dotted units** — Dotted unit names are normalized into slash paths for both `.codc` entries and standalone `.codb` fallback lookup. +- **Project-level index container** — Shared index data is stored in `src/bin/project.codc` at root entry `HOOK.toml`. +- **Container format and write hardening** — `.codc` container behavior was tightened with stronger write/cleanup semantics and stable zip-container handling. +- **Standalone `.codb` support retained** — Standalone `.codb` artifacts remain a permanent supported format alongside `.codc` grouping. + +### ⚡ Lazy Array & Formula Execution +- **Conditional formula composition in `NaturalArray`** — Conditional formulas compose into a single merged formula path. +- **Linear recurrence composition and rolling/vector execution upgrades** — Recurrence paths were refactored for better composition, lower memory pressure, and improved recurrence execution behavior. +- **Lazy map/filter chaining composition** — LiteralRegistry composes chained lazy map/filter views to reduce wrapper layering. ## [v0.8.4] - Formula Lock-In - April 12, 2026 diff --git a/README.md b/README.md index 84ae060..fca4beb 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,6 @@ ## Table of Contents - [What is Coderive?](#what-is-coderive) -- [What Coderive offers today](#what-coderive-offers-today) - [Why Coderive?](#why-coderive) - [Getting Started](#getting-started) - [Language Features](#language-features) @@ -50,32 +49,6 @@ Coderive features a fully hand-written, modular lexer-parser pipeline (no ANTLR) --- -## What Coderive offers today - -Coderive is no longer just a small interpreter demo — it now offers a complete language + tooling stack: - -- **Expressive core language design** - Quantifier-first boolean logic (`any[]`, `all[]`), clean slot-based multi-return functions (`::` + `~>`), policy-based contracts, class inheritance, and readable control-flow constructs. - -- **High-scale lazy data model** - O(1) NaturalArray/range-backed collections, formula-driven iteration, negative/range indexing, conditional and recurrence composition, and array-oriented transformations without eager materialization. - -- **Safe + explicit execution model** - Strong typing semantics, structured visibility (`share`/`local`), explicit safe/unsafe boundaries, and deterministic parser/interpreter behavior built from hand-written language components. - -- **Bytecode and runtime pipeline** - Script execution plus PTAC/IR artifact paths for compiled execution flows, with reusable runtime infrastructure for direct execution and parity validation workflows. - -- **CLI and project workflows** - One-command installer (`install.sh`), direct JAR invocation support, and repository runners for command execution, parity checks, and complexity/performance-focused validation scenarios. - -- **Documentation and browser experience** - A dedicated docs + playground site under `docs/`, enabling interactive language exploration without local installation. - -If you want a language that prioritizes readability, scalable lazy execution, and practical ergonomics for real projects, Coderive is built for that. - ---- - ## Why Coderive? ### ① Quantifier-First Logic