Skip to content

Release: advanced calculator language and result experience - #35

Merged
Nigh merged 51 commits into
mainfrom
dev
Aug 31, 2026
Merged

Nigh merged 51 commits into
mainfrom
dev

Conversation

@Nigh

@Nigh Nigh commented Aug 31, 2026

Copy link
Copy Markdown
Owner

Summary

  • replace dynamic expression execution with a source-aware tokenizer, typed AST, Pratt parser, and controlled interpreter
  • add arbitrary-precision integers, Decimal and Rational arithmetic, user functions, lambdas, ranges, destructuring, vectorized arrays, and matrices
  • add engineering utilities for bit operations, number theory, Hamming SECDED, strict encodings, color spaces, statistics, crypto random values, and numerical root solving
  • migrate the editor to CodeMirror with resilient highlighting, structured errors, active/hover result linking, and pixel-aligned multi-line matrix output
  • add persistent per-line numeric and color result formatting, improved PWA behavior, accessibility, automated unit/e2e verification, and CI

Validation

  • 63 Vitest tests passed
  • 6 Playwright tests passed
  • Astro/TypeScript check completed with 0 errors
  • production build passed

Notes

  • function definitions now use fn instead of def
  • the expression language is intentionally controlled and does not expose browser globals
  • // is a whole-line comment marker only at the start of a trimmed line; inside expressions it is integer division

Nigh and others added 30 commits August 31, 2026 01:46
feat: introduce tokenizer, AST parser, and controlled runtime
feat: add arbitrary-precision numeric tower
feat: add user functions and lambda expressions
feat: add array destructuring assignment
feat: add bounded range expressions
feat: add vectorized array operations
feat: add matrix values and determinants
feat: add arbitrary-width bit operations
feat: add BigInt number theory functions
feat: add Hamming SECDED and structured records
Nigh and others added 21 commits August 31, 2026 02:37
feat: add typed color-space conversions and previews
feat: add strict UTF-8, Base64, and URL encodings
feat: add Decimal statistics and crypto random functions
feat: add budgeted Newton-Raphson solver
Reliability, PWA, and end-to-end UX hardening
feat: improve editor result interaction and formatting
@Nigh
Nigh merged commit 5ffcb2e into main Aug 31, 2026
2 checks passed
@Nigh
Nigh deleted the dev branch August 31, 2026 09:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant