Lampiran C: Utilitas Pointfree
Dalam lampiran ini, Anda akan menemukan beberapa implementasi JavaScript dasar dari berbagai fungsi yang dijelaskan dalam buku ini.
Ingatlah bahwa implementasi ini mungkin bukan implementasi tercepat atau paling efisien di luar sana; mereka dibuat hanya untuk tujuan pendidikan.
Untuk menemukan fungsi yang lebih siap produksi, lihat ramda, lodash, atau folktale.
Perhatikan bahwa fungsi mengacu pada curry & compose fungsi yang didefinisikan dalam Lampiran A.
add
// add :: Number -> Number -> Number
const add = curry((a, b) => a + b);append
// append :: String -> String -> String
const append = flip(concat);chain
// chain :: Monad m => (a -> m b) -> m a -> m b
const chain = curry((fn, m) => m.chain(fn));concat
eq
filter
flip
forEach
head
intercalate
join
last
map
match
prop
reduce
replace
reverse
safeHead
safeLast
safeProp
sequence
sortBy
split
take
toLowerCase
toString
toUpperCase
traverse
unsafePerformIO
Last updated
Was this helpful?