parseman 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<img src="https://raw.githubusercontent.com/matthew-dean/parsecraft/main/assets/parseman.png" alt="
|
|
2
|
+
<img src="https://raw.githubusercontent.com/matthew-dean/parsecraft/main/assets/parseman.png" alt="Parséman — 100% Pure Parsing" width="220" />
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
-
#
|
|
5
|
+
# Parséman (PAR-zə-mahn)
|
|
6
6
|
|
|
7
7
|
Write parsers with combinators, then let the bundler plugin compile them to optimized inline functions at build time — `charCodeAt` dispatch, `while` loops, zero allocation on failure paths. Your parsers are just TypeScript — the plugin optimizes them at build time, invisibly. Easy to write, easy to debug.
|
|
8
8
|
|
|
@@ -16,7 +16,7 @@ Measured on Apple M2 Pro. Bars show µs per parse — shorter is faster.
|
|
|
16
16
|
|
|
17
17
|

|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
Parséman compiled edges out Peggy on small and medium JSON. At 12 kB Peggy pulls ahead by ~10% — it's been doing this a while. On CSV, where the grammar is non-recursive and fully inlines, Parséman compiled wins going away.
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
@@ -502,7 +502,7 @@ pnpm install
|
|
|
502
502
|
pnpm test # Vitest — interpreter + compiler parity + ordered-choice semantics
|
|
503
503
|
pnpm typecheck # TypeScript 7
|
|
504
504
|
pnpm build # ESM + CJS + .d.ts → dist/
|
|
505
|
-
pnpm bench #
|
|
505
|
+
pnpm bench # Parséman vs Peggy vs Parsimmon vs Chevrotain
|
|
506
506
|
```
|
|
507
507
|
|
|
508
508
|
## License
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "parseman",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Parser combinators that compile to optimized JavaScript — use as a library or as a build-time macro",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "Matthew Dean <matthew-dean@users.noreply.github.com>",
|