Package Exports
- @sekwiatkowski/js-fp
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@sekwiatkowski/js-fp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
JS/FP
A pragmatic functional programming library for JavaScript/TypeScript
Computation with monad(-like) objects
Computation with one or two values
Box: computation with one value
Pair: computation with two values
Computation with n values
List: computation with zero, one or more values
NonEmptyList: computation with one or more values
Computation with error handling
Option: computation with a value that may be present or absent
Result: synchronous computation that may succeed or fail, short-circuits when a failure occurs
Validated: like Result, but accumulates errors instead of short-circuiting
Computation with a value and a context
State: stateful computation
Writer: computation with additional data (used for logging)
Writers
StringWriter: computation with log entries concatenated to a string
ListWriter: computation with log entries concatenated to a List instance
Asynchronous computation
Future: asynchronous computation that may succeed or fail (a monadic alternative to Promises)
High-level computation
Program: interpretation of program descriptions
Functions
Action: wrapper around a function with no parameters that enables composition
Arrow: wrapper around a function with one or more parameters that enables composition and adaptation of the input
Combination
Combination with semigroups
Semigroup: a type that supports an associative binary operation
objectCombination: a function to create combination schemes for objects based on semigroups
Combination with monoids
Monoid: a semigroup with an identity element
Boolean
All: combines two booleans using logical AND
Any: combines two booleans using logical OR
Number
Min: combines two numbers, resulting in the smallest of the two
Max: combines two numbers, resulting in the largest of the two
Sum: combines two numbers, resulting in the sum of the two
Product: combines two numbers, resulting in the product of the two
Date
Earliest: combines two dates, resulting in the earlier of the two
Latest: combines two dates, resulting in the later of the two
String
StringConcatenation: combines two string using concatenation
Array
ArrayConcatenation: combines two arrays using concatenation
List
ListConcatenation: combines two lists using concatenation
Testing
Equivalence
Equivalence: testing of equivalence between two values of the same type
objectEquivalence: a function to create equivalence schemes for objects based on member equivalences
Equalities for basic types: equalities for string, number, boolean and Date values and arrays of such values
Order
Order: decision on the order of two values
Ordering: a type alias for the three possible outcomes (-1, 0 and 1)
Predicate
Predicate: wrapper around predicate functions