jbarbadillo / pypeline

A functional tool for managing pipelines of methods with error handling

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pypeline

A functional tool for managing pipelines of methods with error handling.

The library provides a decorator for converting Python methods into Either objects. Either objetcs can be composed to form pipelines of methods in order to transform data.

Either objects can be of type Success or Failure. If the input type is Success then the method will be applied, otherwise the method is bypassed to return the same Failure object.

This tool provides an approach for pipelines of operations on data that handle exceptions without breaking the pipeline, in a functional style.

License

  • Free software: MIT license

Features

Description

This library is based in railway-oriented programming from Haskell, specially in Either monad.

A good tutorial on railway-oriented programming can be found at F# for fun and profit.

It is also inspired in the code developed by jruiz the master craftsman software and shokunin from Eastern Navarre.

The purpose of this tool is merely didactic, although it is completely usable.

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

About

A functional tool for managing pipelines of methods with error handling

License:MIT License


Languages

Language:Python 67.4%Language:Makefile 32.6%