Skip to content

Release 0.5.1 🚀 - #20

Merged
NetWin merged 16 commits into
masterfrom
increment
Oct 24, 2026
Merged

NetWin merged 16 commits into
masterfrom
increment

Conversation

@NetWin

@NetWin NetWin commented Oct 24, 2026

Copy link
Copy Markdown
Owner

Summary

Releases everything merged into increment since 0.5.0:

Highlights

  • A modular evaluator. The evaluator was one 1,590-line class; it is now a small switchboard and one file per
    part of JavaScript under evaluator/language/, with RunContext, HostBridge and describe.ts as its
    infrastructure. Every file explains its part of the language with examples. Scripts run exactly as before, with
    the same results, errors, messages and positions; the small measure-run benchmark runs about 6% faster, the
    larger one is unchanged.

Behaviour changes for hosts

None.

Tooling

  • The playground is live at https://netwin.github.io/maple/, deployed from master after each release. A first
    visit explains what Maple is, an Examples menu loads eight scripts, and the context is now a host module
    whose INSTANCE_DATA and RUN_DATA exports become the instance's globals and the run's data.
  • Commits scoped to playground no longer release @netwin/maple and stay out of its release notes.
  • CONTRIBUTING.md describes the evaluator layout.

NetWin and others added 16 commits October 23, 2026 20:12
Make the evaluator modular and readable
The Context pane becomes the Host context: a JavaScript module the worker
imports from a blob URL. INSTANCE_DATA becomes the instance's globals and
RUN_DATA the data of each run, so scripts can call host functions.
A first visit opens a dialog on what Maple is and how to read the
playground. An Examples menu loads scripts that show what Maple is for
and how it keeps scripts in, and the header links to GitHub and npm and
shows the library's version.
The pages job publishes the playground to https://netwin.github.io/maple/
after each release run on master, and the READMEs link to it.
Put the playground online and let it explain what Maple is
@NetWin NetWin self-assigned this Oct 24, 2026
@github-actions

Copy link
Copy Markdown

📋 Release Preview

Changelog

0.5.1 (2026-10-24)

📖 Documentation

  • evaluator: describe the evaluator layout for contributors (a3d21bc)

🛠️ Code Refactoring

  • evaluator: bind patterns and resolve references through an Interpreter interface (2980f8c)
  • evaluator: move budget, frames and error raising into RunContext (b13e606)
  • evaluator: move calls and closures into calls.ts (9a2e29d)
  • evaluator: move error descriptions of nodes into describe.ts (e0c82ad)
  • evaluator: move host and intrinsic calls into HostBridge (ccd7479)
  • evaluator: move the language files into evaluator/language (c303875)
  • evaluator: split expressions into member access, literals, operators and assignments (9a18edb)
  • evaluator: split statements into blocks, loops and control flow (b2b48c2)

🔄️ Continuous Integration

  • release: don't release commits scoped to the playground (0dd3209)

@NetWin
NetWin marked this pull request as ready for review October 24, 2026 07:38
@NetWin
NetWin merged commit 933fd62 into master Oct 24, 2026
8 checks passed
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 0.5.1 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant