Skip to content

Latest commit

 

History

History
114 lines (85 loc) · 2.72 KB

File metadata and controls

114 lines (85 loc) · 2.72 KB

MinZ Cleanup Plan - February 2026

Archive Branch

archive/pre-cleanup-2026-02 at commit 11600f9


Phase 1: Remove Unused Infrastructure [DONE]

Tree-sitter/Node.js (DELETED)

  • grammar.js - Tree-sitter grammar
  • Cargo.toml - Rust bindings
  • package.json, package-lock.json - Node.js
  • binding.gyp - Node bindings
  • src/ - Generated parser.c (1.8 MB)
  • bindings/ - Language bindings
  • queries/ - Tree-sitter queries

ANTLR (DELETED)

  • minzc/grammar/MinZ.g4
  • minzc/mz-grammar/
  • minzc/Makefile.antlr
  • minzc/test_antlr_all.sh
  • minzc/pkg/parser/antlr_parser.go
  • minzc/pkg/parser/generated/
  • minzc/pkg/parser/minzparser/

Unused Parsers (DELETED)

  • minzc/pkg/parser/sexp_parser.go
  • minzc/pkg/parser/simple_parser.go
  • minzc/pkg/parser/native_parser.go.disabled
  • Multiple grammar.js copies

Large Archives (DELETED)

  • _archive/ - 146 MB old files
  • releases/ - 101 MB old releases (v0.2-v0.4)
  • _zxspeculator/ - 63 MB separate repo

Space Freed: ~315 MB


Phase 2: Clean minzc/ Directory [IN PROGRESS]

Build Artifacts to Remove

  • minzc/*.a80 - Compiled outputs (should be in build/)
  • minzc/*.mir - MIR outputs
  • minzc/archive/ - Internal archive
  • Old binaries: ast-compare, ast-gen, backend-devkit

Keep

  • minzc/pkg/parser/participle/ - Active parser
  • minzc/pkg/parser/parser.go - Parser interface
  • minzc/cmd/ - CLI tools
  • minzc/pkg/ - Core compiler

Phase 3: Curate Documentation

docs/ (343 files → ~50)

  • Archive docs older than 2026 to docs/_archive/
  • Keep: ADRs, specs, current roadmaps
  • Remove: Old progress reports, obsolete designs

Top-Level Markdown

  • Consolidate: ROADMAP.md, STABILITY_ROADMAP.md, PLAN.md
  • Review: All top-level .md files

Phase 4: Curate Examples

Current Status: 59/69 compile

Keep (Working)

  • Core demos for 3 platforms
  • Demoscene examples

Archive (Broken/Aspirational)

  • examples/archive/
  • examples/aspirational/
  • examples/experimental/
  • 10 failing examples

Phase 5: Tool Binaries

Remove Old Binaries

  • mz_pgo - Superseded
  • mzr-simple - Old REPL
  • Evaluate: mz, mza, mze, mzrun, mztap

Post-Cleanup Focus

3 Platforms

  1. ZX Spectrum (classic demoscene)
  2. Agon Light 2 (modern retro, eZ80)
  3. CP/M (vintage computing)

Features

  • Graphics primitives
  • Sound/beeper
  • Fast math (sin/cos tables)
  • Demoscene effects

Stdlib Priority

  • math/fast.minz - Lookup tables
  • graphics/screen.minz - Drawing
  • sound/beep.minz - Audio
  • input/keyboard.minz - Input