MADE IN SWITZERLAND
Functional tools that couldn’t be simpler.
We’re proud to present 1-liners – a dead simple functional utility belt. 137 one-liner functions (and counting). Each hand-crafted with love and attention.
Our decalogue
You get a product of top-quality functional programming craftmanship. Each function follows the KISS principle, which we’ve broken down into ten strict rules.
We always follow them. You have our word.
-
Each function shall fit in one readable line of code
– take a glimpse at the source and you know exactly what’s going on.
-
Each function shall have no side-effects
– you can use it with confidence.
-
Each function shall have a fixed number of arguments
– it’s dead easy to bind, curry and uncurry, apply partially, implode and explode.
-
Each function shall deal with data in an immutable way
– no more debugging nightmares.
-
Each function shall take data as the last argument
– this makes currying and composing new functions a breeze.
-
Each function shall be in a separate micro-module
– you only load/bundle the single 1-liner you need.
-
Each function shall be thoroughly tested
– 100% code coverage guaranteed. We even test if every function fits in one line!
-
Each function shall have great documentation
– the docs explain usage, present the source, and link to the specs.
-
We shall provide functional versions of native object methods
– like reduce(callback, array)
for array.reduce(callback)
.
-
We shall provide functional versions of language constructs
– like plus(a, b)
for a + b
.
Usage
Install
$ npm install --save 1-liners
Usage in ES5
var map = require('1-liners/map');
var map = require('1-liners').map;
Usage in ES 2015 (formerly ES6)
import map from '1-liners/module/map';
import { map, filter } from '1-liners/module';
API
Checkout the documentation
Maintainers
created with gh-contributors-table
License
MIT © stoeffel tomekwi hemanth davidchase tristaaan