dtools.fp

### Package dtools.fp - Pythonic Functional Programming


Keywords
functional, programming, fp, monad, iterators, maybe, either, lazy, non-strict
License
Apache-2.0
Install
pip install dtools.fp==1.3.1

Documentation

Developer Tools - Python Functional Programming (FP)

Functional programming tools which endeavor to be Pythonic.

This project is part of the Developer Tools for Python dtools. namespace project.

Modules

  • dtools.fp.err_handling
    • monadic tools for handling missing values & unexpected events
  • dtools.fp.function
    • utilities to manipulate and partially apply functions
  • dtools.fp.iterables
    • iteration tools implemented in Python
  • dtools.fp.lazy
    • lazy (non-strict) function evaluation
  • dtools.fp.nothingness
    • singleton classes representing either a
      • missing value
      • sentinel value
      • failed calculation
  • dtools.fp.state
    • pure FP handling of state (the state monad)

Benefits of FP

  • improved composability
  • avoid exception driven code paths
  • data sharing becomes trivial due to immutability