Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
The full ECMAScript API done a functional way.
_
at the end that takes the options. E.g: indexOf(x,str)
& indexOf_(x,y,str)
Thanks so much to @casperin and @eschmitt for doing a ton of the work on this though isn't not visible in the contributors.
There is an expose()
method to "mix in" to the global namespace if
desired.
In the browser
<script src="dist/lambda.browser.js"></script>
<script>LambdaJS.expose(window);</script>
or
define(['dist/lambda.amd.js'], function(Ljs){
});
In node
npm install lambdajs
var ljs = require('lambdajs');
or
require('lambdajs').expose(global);
Let's say you want to replace "-" for "/" in a js function. Typically you'd have to do:
var dashesForSlashes = function(str) {
return str.replace(/-/g, '/');
}
This has some issues.
str
function(){}
complete with return
str
to be able to call replace
In functional "point free" style we don't need to grab a hold of our data to be able to write new functions. In this case, by "data" I mean the string.
LambdaJS let's us write something like this:
var dashesForSlashes = replace(/-/g, '/');
This is very useful when dealing with compose
var f = compose(toUpperCase, replace(/-/g, '/'))
f("hi-guys") //=> HI/GUYS
Another issue is, in standard javascript, if you call reverse
on an array, you will
permanently alter the array:
var users = ['Alex', 'Sam', 'Pat']
users.reverse(); //=> ['Pat', 'Sam' 'Alex']
users //=> ['Pat', 'Sam' 'Alex']
That can be quite surprising when you go to display users in a different spot of your app and they are out of order.
LambdaJS makes all the built-in functions "pure", meaning there is no side-effects or mutation.
var users = ['Alex', 'Sam', 'Pat']
reverse(users); //=> ['Pat', 'Sam' 'Alex']
users //=> [['Alex', 'Sam', 'Pat']
If you're interested in learning more about currying and composition, I gave a talk on this subject a little while ago: Hey underscore, you're doing it wrong!
ROADMAP (help if ya want!):
FAQs
The full ECMAScript API done a pointfree way.
The npm package lambdajs receives a total of 9 weekly downloads. As such, lambdajs popularity was classified as not popular.
We found that lambdajs demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.