DEV Community

Discussion on: Point-free gotchas in JavaScript

Collapse
 
seymen profile image
Ozan Seymen

Thanks for the article Dan!

I believe the solution to your first gotcha is "unary" (e.g. ramdajs.com/docs/#unary) - something like:

const R = require('ramda')

const nums = ["25", "45", "11"]
console.log(nums.map(R.unary(Number.parseInt)))
// logs [ 25, 45, 11 ]

I am a little confused with how your second gotcha (this losing context) is related specifically to the pointfree style. I thought this is a general issue with this and not specifically tied to pointfree. Your first example in the second gotcha also suggests that (no pointfree there). Am I missing something?

Collapse
 
danhomola profile image
Dan Homola

Thanks for the comment! The unary function seems neat, I will definitely give Ramda a closer look :)

As for the second gotcha it is simply to illustrate that () => foo() cannot always be replaced by foo as a more "point-free" style. I hope it is clearer now.