Skip to main content

A DSL to define matching rules

Project description

Mucho DSL

Mucho is a Python library that provides a domain specific language (DSL) to define rules with the form:

rule_name: description
conditions
=> match|mismatch|unknown

For example:

like_a_duck: it must be a duck
walks.like_a_duck and
quacks.like_a_duck and
looks.like_a_duck
=> match

It comes with:

  • a compiler that transforms the rules into a Python object representation
  • a virtual machine that evaluates the compiled rules and returns the first satisfied one

Documentation

See https://mucho.readthedocs.io .

Documentation Status

Install

pip install mucho

Contribute

Checkout the project and configure Python environment

git clone git@bitbucket.org:sancorva/mucho.git
cd mucho
pipenv install --dev

Run tests

make test-coverage

Generate docs

cd docs
pipenv run make html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for mucho, version 0.2.1
Filename, size File type Python version Upload date Hashes
Filename, size mucho-0.2.1-py3-none-any.whl (29.7 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size mucho-0.2.1.tar.gz (16.3 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page