From e858eab30004d84e8b06a0778c717731f595a44b Mon Sep 17 00:00:00 2001 From: Will Anderson Date: Mon, 4 May 2026 11:03:47 -0500 Subject: [PATCH] spec: update codegen-js.md to Phase 5, ~90% coverage Status updated from Phase 4 ~80% to Phase 5 ~90%. New sections: - 7. Language features coverage table (supported vs stubbed) - 7a. Phase 5 constructs: extern fn, anonymous functions, try/catch, method call on Any, URL imports -- each with emit shape examples - 9. Roadmap updated: Phases 1-5 marked DONE, Phase 6 unblocked Runtime builtin table updated to ~90 builtins including all Phase 5 additions (promise_then/catch/resolve/reject, object_assign/keys/values, json_deep_clone, array_from, type_of, instanceof_check). --- spec/codegen-js.md | 192 ++++++++++++++++++++++++++++++++++----------- 1 file changed, 145 insertions(+), 47 deletions(-) diff --git a/spec/codegen-js.md b/spec/codegen-js.md index 4bf921d..1faee27 100644 --- a/spec/codegen-js.md +++ b/spec/codegen-js.md @@ -1,6 +1,6 @@ # El JavaScript Backend (codegen-js) -**Status:** Phase 4 complete. ~80% language coverage. Core runtime (~70 builtins) implemented including full DOM bridge (extended), localStorage, timers, window navigation, window export helpers, native_js escape hatches, and @async/await support. Enum::Variant match patterns fully implemented in parser and both codegens. TypeDef parser bug fixed (= before { consumed correctly). `?` nil-propagation compiles to JS optional chaining for field/index access. `--bundle` flag produces self-contained IIFE output for direct `