Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
created: 2026-05-11
last_modified: 2026-05-11
revisions: 0
doc_type: [REFERENCE]
---

# m-standard — Documentation Index

> First-pass index generated 2026-05-11. Labels follow the shared vocabulary below; the same vocabulary is used across all m-dev-tools repos.

## Vocabulary

Each doc is labeled `[TYPE · type? · connection · connection?]`.

**Types** — `HISTORY` · `ARCHITECTURE` · `DESIGN` · `ADR` · `SPEC` · `REFERENCE` · `GUIDE` · `TUTORIAL` · `ROADMAP` · `PLAN` · `RESEARCH` · `SURVEY` · `GAP-ANALYSIS` · `STATUS` · `EXPLAINER` · `NOTES` · `WORKED-EXAMPLE` · `SETUP` · `INTEGRATION` · `PROPOSAL` · `BUILD-LOG` · `CHANGELOG` · `POSTMORTEM`

**Repo connections** — `history` · `function` · `design` · `architecture` · `planning` · `implementation`

## Top-level

- **`spec.md`** — `[SPEC · architecture · design]` Formal v0.2 specification of the project: sources reconciled, output contract, repo layout, milestones, success criteria.
- **`m-standards-guide.md`** — `[GUIDE · REFERENCE · function]` Human-readable narrative reference to M drawn from the integrated layer, with every claim citing a TSV row.
- **`pragmatic-m-standard.md`** — `[EXPLAINER · REFERENCE · function]` Explains the portable YDB-IRIS intersection subset (81 entries) and why pragmatic differs from operational and wise.
- **`va-sac-and-pragmatic-standard.md`** — `[EXPLAINER · function · design]` Layers VA SAC, pragmatic, and operational standards, defining the 58-entry intersection a VistA developer can actually use.
- **`objectscript-analysis.md`** — `[RESEARCH · function]` Opinionated analysis of IRIS ObjectScript as a superset of M, explaining why it sits outside the operational standard.
- **`m-libraries-survey.md`** — `[SURVEY · GAP-ANALYSIS · function]` Comprehensive descriptive survey of the M-language standard library across ANSI, IRIS, and YottaDB with rank-ordered gaps.
- **`m-libraries-remediation.md`** — `[PLAN · ROADMAP · planning]` Prioritised build plan turning the survey's gaps into the `m-stdlib` sibling project, with phases and toolchain prerequisites.
- **`build-log.md`** — `[BUILD-LOG · history · implementation]` Chronological `BL-NNN` log of non-trivial issues, decisions, and surprises encountered while constructing the pipeline.

## `adr/` — Architecture Decision Records governing the reconciliation pipeline

- **`adr/001-two-source-hierarchy.md`** — `[ADR · architecture · design]` Reconcile AnnoStd and YottaDB under a fixed precedence hierarchy, excluding GT.M as no longer pinnable.
- **`adr/002-normative-vs-annotation-separation.md`** — `[ADR · design · architecture]` Separate AnnoStd's normative standard text from committee annotations so consumers cannot confuse commentary with the standard.
- **`adr/003-per-source-preservation.md`** — `[ADR · architecture · design]` Preserve raw per-source TSVs as first-class artifacts alongside the reconciled integrated view to keep extraction reproducible.
- **`adr/004-tsv-plus-json-output.md`** — `[ADR · architecture · function]` Publish every concept family as both flat TSV (for analysts) and structured JSON (for code generators) from a single emitter.
- **`adr/005-build-time-consumability.md`** — `[ADR · architecture · function]` Treat the integrated layer as a machine-readable interface with pinned `schema_version`, locked column order, and JSON Schema gates.
- **`adr/006-iris-as-third-source.md`** — `[ADR · architecture · design]` Add InterSystems IRIS as a third primary source in v0.2, revising ADR-001's two-source framing for the VistA use case.
7 changes: 7 additions & 0 deletions docs/adr/001-two-source-hierarchy.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 1
doc_type: [ADR]
---

# ADR-001 — Two-source hierarchy with explicit precedence

**Status:** accepted (v0.1)
Expand Down
7 changes: 7 additions & 0 deletions docs/adr/002-normative-vs-annotation-separation.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 1
doc_type: [ADR]
---

# ADR-002 — Separate normative text from annotations

**Status:** accepted (deferred for v1.0; see Implementation status below)
Expand Down
7 changes: 7 additions & 0 deletions docs/adr/003-per-source-preservation.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 1
doc_type: [ADR]
---

# ADR-003 — Per-source preservation alongside integrated output

**Status:** accepted (v0.1)
Expand Down
7 changes: 7 additions & 0 deletions docs/adr/004-tsv-plus-json-output.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 1
doc_type: [ADR]
---

# ADR-004 — Dual output format: TSV flat facts + JSON structured detail

**Status:** accepted (v0.1)
Expand Down
7 changes: 7 additions & 0 deletions docs/adr/005-build-time-consumability.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 1
doc_type: [ADR]
---

# ADR-005 — Designed to be code-generated against

**Status:** accepted (v0.1)
Expand Down
7 changes: 7 additions & 0 deletions docs/adr/006-iris-as-third-source.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 1
doc_type: [ADR]
---

# ADR-006 — Add InterSystems IRIS as a third primary source

**Status:** accepted (v0.2)
Expand Down
7 changes: 7 additions & 0 deletions docs/build-log.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-05-09
revisions: 9
doc_type: [BUILD-LOG]
---

# Build log

Chronological record of non-trivial issues encountered during
Expand Down
4 changes: 4 additions & 0 deletions docs/m-libraries-remediation.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ adjacent-projects:
- tree-sitter-m (grammar, VS Code extension)
- m-standard (this repo — provenance, schemas, conflicts)
- m-tools (legacy reference, ^TESTRUN assertion library)
created: 2026-04-30
last_modified: 2026-05-09
revisions: 3
doc_type: [PLAN, ROADMAP]
---

# M libraries — remediation strategy and prioritised roadmap
Expand Down
4 changes: 4 additions & 0 deletions docs/m-libraries-survey.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ derived-from:
- integrated/pattern-codes.tsv
- integrated/multi-vendor-extensions.tsv
- integrated/conflicts.tsv
created: 2026-05-09
last_modified: 2026-05-09
revisions: 1
doc_type: [SURVEY, GAP-ANALYSIS]
---

# M libraries — comprehensive survey across ANSI, IRIS, and YottaDB
Expand Down
7 changes: 7 additions & 0 deletions docs/m-standards-guide.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 2
doc_type: [GUIDE, REFERENCE]
---

# M-Standards-Guide

A human-readable reference to the M (MUMPS) programming language, drawn
Expand Down
4 changes: 4 additions & 0 deletions docs/objectscript-analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ title: ObjectScript — what it is, where it stands, and what could replace it
status: analytical guide (not part of the Operational M Standard)
last-reviewed: 2026-04-29
sources: sources/iris/site/ (InterSystems IRIS Data Platform 2026.1 docs)
created: 2026-05-09
last_modified: 2026-05-09
revisions: 1
doc_type: [RESEARCH]
---

# ObjectScript — what it is, where it stands, and what could replace it
Expand Down
7 changes: 7 additions & 0 deletions docs/pragmatic-m-standard.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 2
doc_type: [EXPLAINER, REFERENCE]
---

# The Pragmatic M Standard

> **What "pragmatic" means here.** Strictly: *portable across YottaDB
Expand Down
7 changes: 7 additions & 0 deletions docs/spec.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-23
last_modified: 2026-04-25
revisions: 6
doc_type: [SPEC]
---

# m-standard — Specification v0.2

**Status:** draft for review
Expand Down
7 changes: 7 additions & 0 deletions docs/va-sac-and-pragmatic-standard.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
---
created: 2026-04-25
last_modified: 2026-04-25
revisions: 3
doc_type: [EXPLAINER]
---

# VA SAC, the Pragmatic M Standard, and the Operational Subset

Three M standards layer over each other for VistA development. They
Expand Down
Loading