v2.0.0#
- Renamed namespace
Chemem\Bingo\Functional\Algorithms
to Chemem\Bingo\Functional
- Moved
Maybe
and Either
monad artifacts into Chemem\Bingo\Functional\Functors\Monads
namespace - Modified
patternMatch
, cmatch
, compact
, keysExist
, reject
, max
, min
, firstIndexOf
, fill
, every
, compact
, mean
, intersects
, tail
, zip
helper functions - Modified pattern matching primitives namespaced under
Chemem\Bingo\Functional\PatternMatching\Internal
- Removed
readIO
, ask
, Maybe::lift
, Either::lift
functions - Added lenses
- Added transducer functions
- Modified List and Writer monads
- Added
Functor
, ApplicativeFunctor
, and Monad
interfaces - Modified
intersects
function in immutable Collection
- Renamed
match
to cmatch
- Added
liftM
monad helper function - Added
K
function (K-combinator) - Revamped project test suite
v1.13.0#
- Modified
putStr
, getLine
, putStrLn
, putChar
IO helper functions - Added default values to
pick
and pluck
functions - Added internal functions namespaced under
Chemem\Bingo\Functional\Algorithms\Internal
- Modified some list/collection primitives to work on objects as well as hashtables
- Infused Collection with
Transient
properties - Added
mergeN
Collection method - Modified
any
and every
Collection methods - Added
ImmutableDataStructure
and ImmutableList
interfaces - Added a Tuple immutable structure
- Added
mapM
Monad function - Modified
map
, filter
, fold
, reject
, pluck
, pick
, any
, every
, partial
, indexOf
, indexesOf
, addKeys
, omit
, partialRight
, dropLeft
, dropRight
, mapDeep
, and filterDeep
helper functions - Replaced original pattern-matching algorithm with that in the functional-php/pattern-matching library
- Added
intersperse
, difference
, countOfKey
, countOfValue
, and renameKeys
functions - Jettisoned docs folder. Moved docs site to new address
v1.12.0#
- Removed function parameter from zip function
- Created Monadic interface for Monads
- Added
toWords
, slugify
, truncate
, intersects
, composeRight
, filePath
, union
, unionWith
, and zipWith
helper functions - Added
filterM
and foldM
Monad helper functions - Added APCU-supported functionality to memoize function
- Added constant static function definitions for Monadic types
- Added
fetch
, contains
, unique
, head
, tail
, last
, intersects
, implode
, and offsetGet
Collection functions
v1.11.0#
- Modified pattern matching algorithm to enable usage of wildcards in patterns
- Modified
State
, List
, Writer
, and Reader
monads - Added
pure
, liftA2
Applicative helper functions - Added
bind
and of
methods to Either and Maybe type classes - Added
mcompose
, bind
, IO
, _print
, getChar
, putChar
, putStr
, getLine
, interact
, readFile
, writeFile
, appendFile
, readIO
, state
, gets
, modify
, evalState
, execState
, put
, runState
, fromValue
, concat
, prepend
, append
, head
, tail
, reader
, runReader
, either
, isLeft
, isRight
, lefts
, rights
, fromLeft
, partitionEithers
, maybe
, isJust
, isNothing
, fromJust
, fromNothing
, maybeToList
, listToMaybe
, catMaybes
, mapMaybe
, mapReader
, withReader
, ask
, writer
, runWriter
, execWriter
, and mapWriter
monad functions - Added
flip
helper function - Added
letIn
function
v1.10.0#
- Added immutable collections
- Added object matching capability to
patternMatch
- Modified
patternMatch
array matching to give more concise match results - Jettisoned reverse function
- Added
mapDeep
, omit
, addKeys
, last
, reject
, and mean
helper functions
v1.9.0#
- Refined pattern matching algorithm
- Modified
dropLeft
, dropRight
, map
, and filter
helper functions - Added
every
, any
, where
, reduceRight
, curryRight
, foldRight
, min
, max
, groupBy
, and patternMatch
helper functions
v1.8.0#
- Added pattern matching to library
- Removed
invalidArrayKey
, invalidArrayValue
, emptyArray
, and memoizationError
callback functions - Modified
map
, pick
, fold
, pluck
, reduce
, filter
, memoize
, and isArrayOf
helper functions - Added
fill
, partial
, indexOf
, reverse
, toPairs
, fromPairs
, match
helper functions
v1.7.2#
- Modified
orElse
methods in Maybe and Either monads - Added
flatMap
method to State and List monads
v1.7.1#
- Modified throttle function to accept multiple arguments
- Added type signatures and doc blocks
- Added immutable definition of
concat
v1.7.0#
v1.6.0#
- Modified
filter
function - Changed parameter order of the
reduce
function
v1.5.0#
- Added
map
, filter
, fold
, and reduce
helper functions
v1.4.0#
- Added callback signatures to
pluck
, pick
, isArrayOf
, and memoize
helper functions - Replaced
extractErrorMessage
callback function - Added
IO
, Reader
, Writer
, and State
monads - Added
concat
and throttle
helper functions - Added
invalidArrayKey
, invalidArrayValue
, emptyArray
, and memoizationError
callback functions - Jettisoned
Monad
v1.3.0#
- Added
filter
and flatMap
functions to Monad
v1.2.1#
- Fixed partialRight behavior in
partialLeft
- Fixed error with mixed type arrays in
isArray
helper function
v1.2.0#
- Added
isArrayOf
, partialRight
, and partialLeft
helper functions - Added
TransientMutator
trait - Jettisoned
partial
helper function
v1.1.0#
- Added
head
, tail
, and partition
helper functions
v1.0.0#
- First production release
- Added
compose
, constantFunction
, curry
, curryN
, extend
, identity
, memoize
, partial
, pick
, pluck
, zip
, and unzip
helper functions - Added
Either
, Maybe
, CollectionApplicative
, and Monad
typeclasses