Module: Funkr

Defined in:
lib/funkr.rb,
lib/funkr/adt/adt.rb,
lib/funkr/version.rb,
lib/funkr/adt/matcher.rb,
lib/funkr/types/maybe.rb,
lib/funkr/types/failable.rb,
lib/funkr/types/container.rb,
lib/funkr/categories/monad.rb,
lib/funkr/categories/monoid.rb,
lib/funkr/categories/functor.rb,
lib/funkr/types/simple_record.rb,
lib/funkr/categories/alternative.rb,
lib/funkr/categories/applicative.rb

Overview

Funkr brings some common functional programming constructs to ruby.

In particular, it offers a simple mechanism to create Algebraïc Data Types and do pattern matching on them. For an exemple implementation, see provided classes.

It also provide modules for common categories (Monoid, Monad, Functor, Applicative …), and extends common types to support categories they belongs to (Array, Hash …). Categories can also be used with custom types, see provided classes.

Defined Under Namespace

Modules: Categories, Matchers, Types Classes: ADT

Constant Summary collapse

VERSION =
"0.0.28"