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 .
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
Metadata
Release files for mucho 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mucho-0.2.1.tar.gz | 16.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mucho-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 46.0 kB
Release files / mucho-0.2.1.tar.gz
| Download URL | mucho-0.2.1.tar.gz |
|---|---|
| Size | 16.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2b59db56add5318464aed32d7a4652a4e714ad069190454e195f4b10e63bf98b
|
|
BLAKE2b-256 checksum How to use checksums |
51e103766b39b3c64537fc95efb59c0fb41b70193272a6095c56586a164ec3ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.2
|
Release files / mucho-0.2.1-py3-none-any.whl
| Download URL | mucho-0.2.1-py3-none-any.whl |
|---|---|
| Size | 29.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c32dcde1b267794b05c06fbb7e7de1ad52f9a492d54d35b7c94b9995cce66632
|
|
BLAKE2b-256 checksum How to use checksums |
895dc0cd43c5147031f9005a02021417e1ebed0f1dc544ed63452999e36ed504
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.2
|