mpl/CHANGELOG.md
developtheweb 468a8045c7 Sync all reference docs with the grammar
- precedence.csv regenerated to the actual 14-level chain (postfix and
  prefix levels, guarded alternatives, definition vs assignment)
- glyph-escapes.md regenerated from the lexer: 73 glyphs, exactly one
  ASCII escape each, verified code points; M1-deferred symbols listed
  separately; add \middot so every glyph has an escape
- math_prog_lang.md: M0/M1 symbol split, canonical handler arrow, one-role
  semicolon, real precedence table and brace-disambiguation rules; the ten
  example programs are now embedded verbatim and CI-parsed
- Whitepaper (md + tex + appendices): every mpl code block parses or is
  re-fenced as an explicitly-labelled M1+ design sketch; symbol tables
  replaced by a pointer to glyph-escapes.md; unbuilt tooling and unmeasured
  claims reworded as planned/envisioned
- docs/ARCHITECTURE.md: status preamble, real grammar excerpt, planned
  sections labelled as such
- DocumentationTest now also covers math_prog_lang.md and the whitepaper
- CHANGELOG and DECISIONS.md updated
2026-07-09 03:19:43 -04:00

79 lines
No EOL
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Changelog
All notable changes to the Mathematical Programming Language (MPL) project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
- Gradle wrapper, so `./gradlew build` works from a fresh clone
- CI workflow: grammar build (ANTLR warnings are errors), tests, example parsing
- Documentation test: every ```mpl code block in README, spec and whitepaper must parse
- Canonical call syntax `f(a, b)` with nullary calls `f()`
- Wired-in operators: `≜` definition, `⊕`/`⊖` postfix resources, `⇀_ch`/`↽_ch` channels, `‧` module access, unary minus, `/` as ASCII alias of `÷`
- DECISIONS.md recording each design resolution with rejected alternatives
### Changed
- One canonical form per construct: guarded alternatives `(c ⟹ r) | fallback`, `✎` output, `↯pattern ⟹ expr` handler clauses, exactly one ASCII escape per glyph
- `;` has a single role (sequence separator, trailing permitted)
- Identifiers may no longer start with `_`, so subscripts lex correctly
- precedence.csv and glyph-escapes.md regenerated to match the grammar exactly
- README claims reduced to what CI verifies
- Comprehensive enterprise-level documentation structure
- AGPLv3 license for strong copyleft protection (changed from MIT)
- README transformed into moonshot vision document emphasizing cognitive justice
- Whitepaper updated to v2.0 with educational narrative focus
### Fixed
- Grammar compiles: removed mutual left recursion (errors 119/148) and shadowed tokens (warning 184)
- Generated parser package no longer declared twice
- Gradle finds the grammar (src/main/antlr4) and the ParseExamples main class
- Test harness uses CharStreams; supplementary-plane glyphs (𝔹, 𝓜, 🖫) now tokenize
- Examples 03 and 05 parse (canonical handler arrow; real placeholder body)
### Removed
- Dead tokens with no parser rule: `?` (QUERY), `∃`, `⇐`, `→`, `.`
- Juxtaposition function application (`f x`)
- C-style ternary and `📤` from all documentation
## [2.0.0] - 2025-01-26
### Added
- Complete ANTLR 4 grammar with 70+ mathematical operators
- Support for functional, imperative, concurrent, and object-oriented paradigms
- ASCII escape sequences for all Unicode symbols
- Comprehensive test suite with 663 lines of test code
- 10 example programs demonstrating real-world usage
- Academic whitepaper with technical specification
- Symbol reference guide (glyph-escapes.md)
- Operator precedence table
### Changed
- Moved from theoretical concept to working parser implementation
- Established Fatima Test as core design principle
### Fixed
- All M0 blocker issues resolved
- Zero shift/reduce conflicts in grammar
- Operator precedence validated through extensive testing
## [1.0.0] - 2024-12-15
### Added
- Initial concept and vision for Mathematical Programming Language
- Basic symbol set proposal
- Preliminary grammar sketch
- Mission statement for cognitive universality
---
## Version History Summary
- **2.0.0** - First working implementation with complete grammar
- **1.0.0** - Initial concept and vision
[Unreleased]: https://github.com/developtheweb/mpl/compare/v2.0.0...HEAD
[2.0.0]: https://github.com/developtheweb/mpl/compare/v1.0.0...v2.0.0
[1.0.0]: https://github.com/developtheweb/mpl/releases/tag/v1.0.0