1.0.4 • Published 2 years ago
mep v1.0.4
:heavy_division_sign: - MEP is a mathematical expression parser written in JavaScript
Why ?
I needed an extensible mathematical expression parser for 1Calc
This package does the following:
- Lex mathematical expressions with custom operations, constants and functions into tokens
- Parse tokens and return an RPN array of
numbers
/Operation
. - Compute an RPN array and return the result
Installation
Using npm:
$ npm install mep
You can now import mep
as an ES modules or a CommonJS module.
Exemple
import { compute, registerConstant } from 'mep'
// or
// const { compute, registerConstant } = require('mep')
console.log('Result:', compute('log2(5 * 65 + cos(PI ^ 2))'))
// Result: 8.340283256791498
registerConstant('PI2', Math.PI ** 2)
console.log('Result:', compute('log2(5 * 65 + cos(PI2))'))
// Result: 8.340283256791498
Contributing
If you want to contribute to MEP to add a feature or improve the code contact me at negrel.dev@protonmail.com, open an issue or make a pull request.
:stars: Show your support
Please give a :star: if this project helped you!
:scroll: License
MIT © Alexandre Negrel