langkit
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

langkit

A compact and expressive DSL and expression interpreter toolkit

Install

$ npm install langkit

Usage

import { createLexer, createParser } from 'langkit';

const calcLexer = createLexer({
  plus: /\+/,
  number: /\d+(?:\.\d+)?/,
  space: {
    pattern: /\s+/,
    skip: true,
  },
});

const calculate = createParser(calcLexer, (h) => {
  return h.fromTokens(['number', 'plus', 'number'], ([left, _, right]) => {
    return Number(left.value) + Number(right.value);
  });
});

console.log(calculate('5 + 45'));
// => 50

examples

Package Sidebar

Install

npm i langkit

Weekly Downloads

0

Version

0.1.0

License

MIT

Unpacked Size

42.5 kB

Total Files

40

Last publish

Collaborators

  • didierdemoniere