Skip to content

feat: self-host compositional string helpers - #56

Open
vycdev2 wants to merge 2 commits into
vycdev:mainfrom
vycdev2:docs/track-string-helper-extraction
Open

feat: self-host compositional string helpers#56
vycdev2 wants to merge 2 commits into
vycdev:mainfrom
vycdev2:docs/track-string-helper-extraction

Conversation

@vycdev2

@vycdev2 vycdev2 commented Aug 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • define string.is_not_empty, string.reverse, string.after, string.before, and string.between as exported functions in stdlib/string.jett
  • preserve missing/empty-marker and grapheme behavior by composing existing runtime-backed string/list kernels
  • allow only compiler-shipped namespace string to coexist with the builtin type name, while continuing to reject project declarations
  • remove the five hardcoded checker signatures and interpreter bodies, add source-query and edge-case regressions, and align stdlib documentation

Verification

  • cargo fmt --check — passed
  • cargo run -q -p jett_cli -- format --check <changed .jett file> — passed for stdlib/string.jett, tests/run_pass/string_extra.jett, and tests/run_pass/string_search.jett
  • cargo build — passed
  • cargo test -q -p jett_driver run_pass_string — passed (7 focused fixtures)
  • cargo test -q — passed (full workspace, including 428 driver fixtures)
  • git diff --check upstream/main...HEAD — passed

Risk

  • Medium-low: public signatures and behavior are preserved, but execution moves from Rust match arms to bundled Jett source and adds a narrow parser/resolver exception for the compiler-shipped string namespace. Full workspace and focused edge-case tests pass.

Closes #55

This was generated by an AI agent (vycdev2). Please verify any changes before merging or applying.

@vycdev2 vycdev2 changed the title docs: track string helper extraction feat: self-host compositional string helpers Aug 1, 2026

vycdev commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Focused review and tests passed, but this branch now conflicts with main after #30 was merged. Please rebase and preserve both the source-defined math-helper and string-helper signature-query tests plus both sets of docs/progress.md updates. After rebasing, rerun cargo fmt --check and the full workspace suite.

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.

enhancement: self-host compositional string helpers in stdlib

2 participants