Skip to content

Instantly share code, notes, and snippets.

@Emad-salah
Created March 22, 2020 17:42
Show Gist options
  • Save Emad-salah/d869b02e9e02d0bf11107af397efa63d to your computer and use it in GitHub Desktop.
Save Emad-salah/d869b02e9e02d0bf11107af397efa63d to your computer and use it in GitHub Desktop.
const pluckDeep = key => obj => key.split('.').reduce((accum, key) => accum[key], obj)
const compose = (...fns) => res => fns.reduce((accum, next) => next(accum), res)
const unfold = (f, seed) => {
const go = (f, seed, acc) => {
const res = f(seed)
return res ? go(f, res[1], acc.concat([res[0]])) : acc
}
return go(f, seed, [])
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment