File tree Expand file tree Collapse file tree 2 files changed +21
-30
lines changed
Expand file tree Collapse file tree 2 files changed +21
-30
lines changed Original file line number Diff line number Diff line change 11<h1 align =" center " ><em >sub</em >script</h1 >
22
3- <p align =" center " >Expression parser & evaluator</p >
3+ <p align =" center " >Modular expression parser & evaluator</p >
44<div align =" center " >
55
66[ ![ build] ( https://github.com/dy/subscript/actions/workflows/node.js.yml/badge.svg )] ( https://github.com/dy/subscript/actions/workflows/node.js.yml ) [ ![ npm] ( https://img.shields.io/npm/v/subscript )] ( http://npmjs.org/subscript ) [ ![ size] ( https://img.shields.io/bundlephobia/minzip/subscript?label=size )] ( https://bundlephobia.com/package/subscript ) [ ![ microjs] ( https://img.shields.io/badge/µjs-subscript-darkslateblue )] ( http://microjs.com/#subscript ) <!-- [](https://dy.github.io/subscript/)-->
@@ -15,12 +15,12 @@ let fn = subscript('a + b * 2')
1515fn ({ a: 1 , b: 3 }) // 7
1616```
1717
18- * ** Fast** — pratt parser engine, see [ benchmarks] ( #performance )
19- * ** Portable** — universal expression format, see [ spec] ( ./spec.md )
20- * ** Extensible** — pluggable syntax, see [ playground] ( https://dy.github.io/subscript/ )
18+ * ** Modular** — 40+ syntax features for building DSL, see [ playground] ( https://dy.github.io/subscript/ )
19+ * ** Universal** — language-agnostic minimal syntax tree, see [ spec] ( ./spec.md )
20+ * ** Fast** — single-pass Pratt parser, see [ benchmarks] ( #performance )
21+ * ** Small** — ~ 2KB core, runs in browser/node
22+ * ** Safe** — sandboxed, no prototype access
2123* ** Metacircular** — parses and compiles itself
22- * ** Safe** — sandboxed, blocks ` __proto__ ` , ` constructor `
23-
2424
2525## Presets
2626
Original file line number Diff line number Diff line change 11{
22 "name" : " subscript" ,
33 "version" : " 10.2.0" ,
4- "description" : " Tiny expression parser & evaluator" ,
4+ "description" : " Modular expression parser & evaluator" ,
55 "main" : " subscript.js" ,
66 "module" : " subscript.js" ,
77 "browser" : " subscript.js" ,
3939 "url" : " git+https://github.com/dy/subscript.git"
4040 },
4141 "keywords" : [
42- " jexl" ,
43- " jsep" ,
42+ " parser" ,
4443 " expression" ,
44+ " language" ,
45+ " dsl" ,
46+ " syntax" ,
47+ " modular" ,
48+ " extensible" ,
49+ " pratt" ,
4550 " evaluator" ,
46- " parser" ,
47- " evaluation" ,
48- " math" ,
49- " arithmetic" ,
51+ " compiler" ,
52+ " ast" ,
5053 " justin" ,
51- " eval" ,
52- " math-eval" ,
53- " math-evaluator" ,
54- " math-expression-evaluator" ,
55- " calculation" ,
5654 " jessie" ,
57- " jessica" ,
58- " eval" ,
59- " dsl" ,
60- " json" ,
61- " calculator" ,
62- " calc" ,
63- " math.js" ,
64- " mathjs" ,
65- " math-codegen" ,
66- " math-parser" ,
55+ " jsep" ,
56+ " jexl" ,
57+ " sandboxed" ,
58+ " safe-eval" ,
6759 " formula" ,
68- " operator" ,
69- " overload"
60+ " template"
7061 ],
7162 "author" : " Dmitry Iv." ,
7263 "license" : " ISC" ,
You can’t perform that action at this time.
0 commit comments