NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #204 most downloaded on npm
prelude.ls is a functionally oriented utility library. It is powerful and flexible. Almost all of its functions are curried. It is written in, and is the recommended base library for, LiveScript.
Last release 7 years ago
no release in 18 months
Ships unpredictably
gaps range from 2 weeks to 4.9 years
Nearly every release is documented
notes for 14 of 14 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
14 releases · first in 2012
- fix version
- add List.remove - build with LiveScript 1.6.0 - update dependencies - remove coverage calculation
List.removefix zip-all and zip-with-all corner case (no input)
Func.memoizezip-all and zip-with-all corner case (no input)One column per quarter.
- curry unique-by, minimum-by
unique-by, minimum-byfixed definition of foldr and foldr1, the new correct definition is backwards incompatible with the old, incorrect one
List functions: maximum-by, minimum-by, unique-byList functions: at, elem-index, elem-indices, find-index, find-indicesStr functions: capitalize, camelize, dasherizeFunc function: over - eg. same-length = (==) `over` (.length)Str.repeat through main prelude objectfoldr and foldr1, the new correct definition is backwards incompatible with the old, incorrect onefix- build browser versions
bug fix for flatten - slight change with bug fix, flattens arrays only, not array-like objects
flatten - slight change with bug fix, flattens arrays only, not array-like objectsbug fixes for drop-while and take-while
drop-while and take-whilemassive update - separated functions into separate modules
Obj.map), or use chars or values in other cases to transform into a list(obj.) in LiveScript to do thatprelude = require('prelude-ls')compact, split, flatten, difference, intersection, union, count-by, group-by, chars, unchars, applylists-to-obj which takes a list of keys and list of values and zips them up into an object, and the converse obj-to-listspairs-to-obj which takes a list of pairs (2 element lists) and creates an object, and the converse obj-to-pairscons, append - use the concat operatorcompose - use the compose operatorobj-to-func - use partially applied access (eg. (obj.))length - use (.length)sort-by renamed to sort-withsort-bycompare - just use the new sort-bybreak-it renamed break-list, (Str.break-str for the string version)Str.repeat which creates a new string by repeating the input n timesunfold as alias to unfoldr is no longer usedadded fix, a fixpoint (Y combinator) for anonymous recursive functions
fix, a fixpoint (Y combinator) for anonymous recursive functionsunfoldr (alias unfold)replicate with a string now returns a list of stringspartial, just use native partial application in LiveScript using the _ placeholder, or curryingsort, sortBy, and compareremoved call - use (.func arg1, arg2)
lookup - use (.prop)call - use (.func arg1, arg2)pluck - use map (.prop), xshead and lastprelude-browser.jsprelude-min.js to prelude-browser-min.jszip to zipAllzipWith to zipAllWithzip, a curried zip that takes only two argumentszipWith, a curried zipWith that takes only two argumentsremoved notElem function (use not in)
parition functioncurry functionelem function (use in)notElem function (use not in)added support for using strings in map and the like
listToObjectuniqueobjToFuncerror (just use throw)tau constantjoinvalueskeyspartiallog to lnhead: firstinstallPrelude helperremoved functions that simply warp operators as you can now use operators as functions in LiveScript
min/max are now curried and take only 2 argumentscallYour coding agent can read these notes before it upgrades. Set up the MCP server →