feat: add multi-engine regex flavour support

This commit is contained in:
2026-07-27 11:43:51 +02:00
parent 7079cde15f
commit 7f3a91ad37
340 changed files with 643286 additions and 483 deletions

View File

@@ -48,13 +48,24 @@ export function HelpDialog({
<h3>What runs where</h3>
<p>
Syntax parsing and active-engine execution run in separate, killable
browser workers. ECMAScript uses the browser RegExp implementation;
PCRE2 uses the bundled 10.47 WebAssembly engine; Python uses CPython
3.14 through Pyodide; and Java uses TeaVM&apos;s java.util.regex
compatibility implementation. The result metadata names the runtime
actually used. Patterns, subjects and projects are never uploaded.
There is no backend, account, telemetry, CDN dependency, or
executable replacement function.
browser workers. JavaScript uses the browser&apos;s ECMAScript
RegExp implementation, while the standalone PCRE2 profile uses the
bundled 10.47 WebAssembly engine. The other profiles name their
selected runtime explicitly: PHP 8.5.8 preg with PCRE2 10.44, legacy
Perl 5.28.1 through WebPerl 0.09-beta, CPython 3.14, CRuby 4.0,
TeaVM java.util.regex, libc++ std::regex, Go regexp, Rust regex and
.NET System.Text.RegularExpressions. Scala is explicitly a Scala/JVM
regex-syntax compatibility profile over the same TeaVM Java runtime,
not a Scala VM. Result metadata names the runtime actually used.
</p>
<p>
Structural coverage varies by profile. Only the ECMAScript provider
currently exposes a complete grammar-backed tree; the additional
community providers retain partial lexical captures and replacement
tokens while their selected runtime compiler remains authoritative.
Patterns, subjects and projects are never uploaded. There is no
backend, account, telemetry, CDN dependency, or executable
replacement function.
</p>
<p>
TeaVM 0.15.0 is not OpenJDK. Its replacement implementation accepts