chemem / bingo-functional
A simple functional programming library.
Fund package maintenance!
Requires
- php: ^7.2 || ^8
Requires (Dev)
- ergebnis/composer-normalize: ^2
- friendsofphp/php-cs-fixer: ^3
- giorgiosironi/eris: ^0
- phpunit/phpunit: ^8 || ^9
Suggests
- ext-apcu: In-memory key-value PHP userland store
- ext-eio: An interface to the libeio library
- ext-mbstring: PHP extension for accurately determining byte-length of strings
- ext-readline: An interface to the GNU readline library
- chemem/bingo-functional-repl: A simple REPL for the bingo-functional library
This package is auto-updated.
Last update: 2026-07-19 18:04:09 UTC
README
bingo-functional
A simple functional programming library for PHP.
Requirement(s)
- PHP 7 or higher
Rationale
PHP, a language not commonly associated with Functional Programming, does support the paradigm - to an extent. The language's Functional Programming affability though substantial is not the same as that of Haskell, OCaml, or F# - purely Functional languages. bingo-functional is an attempt at enhancing the usability of FP techniques - those that warrant the use of helper functions, applicatives, monads, pattern matching, and immutable lists.
Documentation
Please check out the documentation for more knowledge on how to use this library.
Also, a changelog exists and can be used to track changes made to the project.
Dealing with problems
Endeavor to create an issue on GitHub when the need arises or send an email to lochbm@gmail.com
Functional Programming in PHP
I collaborated with Apress to release a new edition of Functional Programming in PHP, which you, a prospective reader, can find on the Apress bookstore. Featured prominently throughout the book are artifacts in this library whose origins (where necessary) and use cases are explored. I recommend you consider getting yourself a copy so you can further acquaint yourself with the paradigm and set yourself on a path to writing performant, composable code.
Related Projects
-
bingo-functional-js A JavaScript port of this library
-
bingo-functional-repl A REPL for this library