pymonad
Monad library
An implementation of monads and related data structures in Python.
PyMonad implements data structures typically available in pure functional or functional first programming languages like Haskell and F#. Included are Monad and Monoid data types with several common monads included - such as Maybe and State - as well as some useful tools such as the @curry decorator for defining curried functions. PyMonad 2.x.x represents an almost complete re-write of the library with a simpler, more consistent interface as well as type annotations to help ensure correct usage.
198 stars
4 watching
22 forks
Language: Python
last commit: 7 months ago Related projects:
Repository | Description | Stars |
---|---|---|
clojure/algo.monads | A Clojure-based library providing macros and definitions for common data monads. | 448 |
heinrichapfelmus/operational | A library for implementing monads by specifying instructions and their operational semantics | 82 |
mongodb/pymodm | Provides an object-oriented interface to MongoDB | 354 |
przemyslawjanpietrzak/pymonet | A high-level Python library for functional programming, providing abstract data structures and utilities. | 34 |
vickumar1981/pyeffects | Implements functional types for handling side-effects in Python with Either, Option, Try, and Future monads. | 31 |
drboolean/freeky | A collection of monads for composable and expressive functional programming in JavaScript | 176 |
thangiee/freasy-monad | A Scala macro-based library for creating typelevel monads with first-class support in IntelliJ | 114 |
jsmonk/sweet-monads | Provides a set of monads and interfaces for working with lazy iterators in TypeScript | 346 |
mplatvoet/funktional | A Kotlin implementation of monadic types for functional programming. | 10 |
raimohanska/monads | An introduction to monads in the Haskell programming language | 12 |
kallanreed/monadsharp | A collection of monadic types for C# with focus on readability and usability. | 1 |
cyrusofeden/towel | A library that provides a simple Maybe monad implementation in Elixir. | 99 |
alex-lairan/monads | A collection of monad implementations for Crystal programming language | 47 |
mongodb-labs/pymongoexplain | Provides a simplified interface to explain MongoDB commands in PyMongo | 3 |
haskell/mtl | A collection of monad classes and transformers that enable functional programming in Haskell | 367 |