Updating conversion, creating readmes
This commit is contained in:
173
terminal/fpjs
173
terminal/fpjs
@@ -1,11 +1,11 @@
|
||||
[38;5;12m [39m[38;2;255;187;0m[1m[4mAwesome FP JS [0m[38;5;14m[1m[4m![0m[38;2;255;187;0m[1m[4mAwesome[0m[38;5;14m[1m[4m (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)[0m[38;2;255;187;0m[1m[4m (https://github.com/sindresorhus/awesome)[0m
|
||||
[38;5;12m [39m[38;2;255;187;0m[1m[4mAwesome FP JS [0m[38;5;14m[1m[4m![0m[38;2;255;187;0m[1m[4mAwesome[0m[38;5;14m[1m[4m (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)[0m[38;2;255;187;0m[1m[4m (https://github.com/sindresorhus/awesome)[0m
|
||||
|
||||
[38;5;12mThis[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcurated[39m[38;5;12m [39m[38;5;12mlist[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mawesome[39m[38;5;12m [39m[38;5;14m[1mfunctional[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;12m [39m[38;5;12m(https://en.wikipedia.org/wiki/Functional_programming)[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlearning[39m[38;5;12m [39m[38;5;12mresources[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mAs[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mmulti-paradigm[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mlanguage,[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m
|
||||
[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mstyles.[39m[38;5;12m [39m[38;5;12mWith[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12mresources[39m[38;5;12m [39m[38;5;12mwe[39m[38;5;12m [39m[38;5;12mwant[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhelp[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mmake[39m[38;5;12m [39m[38;5;12mbetter[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mJavaScript’s[39m[38;5;12m [39m[38;5;12msupport[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mwriting[39m[38;5;12m [39m[38;5;12mprograms[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12m_functional_[39m[38;5;12m [39m[38;5;12mway.[39m
|
||||
[38;5;12mThis[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcurated[39m[38;5;12m [39m[38;5;12mlist[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mawesome[39m[38;5;12m [39m[38;5;14m[1mfunctional[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;12m [39m[38;5;12m(https://en.wikipedia.org/wiki/Functional_programming)[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlearning[39m[38;5;12m [39m[38;5;12mresources[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mAs[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mmulti-paradigm[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mlanguage,[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mwritten[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m
|
||||
[38;5;12mstyles.[39m[38;5;12m [39m[38;5;12mWith[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12mresources[39m[38;5;12m [39m[38;5;12mwe[39m[38;5;12m [39m[38;5;12mwant[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhelp[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mmake[39m[38;5;12m [39m[38;5;12mbetter[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mJavaScript’s[39m[38;5;12m [39m[38;5;12msupport[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mwriting[39m[38;5;12m [39m[38;5;12mprograms[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12m_functional_[39m[38;5;12m [39m[38;5;12mway.[39m
|
||||
|
||||
[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;14m[1mstyle[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;12m [39m[38;5;12m(https://wiki.haskell.org/Functional_programming)[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mmodels[39m[38;5;12m [39m[38;5;12mcomputations[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mevaluation[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mexpressions.[39m[38;5;12m [39m[38;5;12mContrast[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mimperative[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mwhere[39m[38;5;12m [39m
|
||||
[38;5;12mprograms[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mcomposed[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mstatements[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mchange[39m[38;5;12m [39m[38;5;12mglobal[39m[38;5;12m [39m[38;5;12mstate[39m[38;5;12m [39m[38;5;12mwhen[39m[38;5;12m [39m[38;5;12mexecuted.[39m[38;5;12m [39m[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mtypically[39m[38;5;12m [39m[38;5;12mavoids[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mmutable[39m[38;5;12m [39m[38;5;12mstate[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfavors[39m[38;5;12m [39m[38;5;12m_side-effect[39m[38;5;12m [39m[38;5;12mfree_[39m[38;5;12m [39m[38;5;12mfunctions[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12m_immutable_[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12minstead.[39m[38;5;12m [39m[38;5;12mThis[39m
|
||||
[38;5;12mencourages[39m[38;5;12m [39m[38;5;12mwriting[39m[38;5;12m [39m[38;5;12mcomposable[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdeclarative[39m[38;5;12m [39m[38;5;12mprograms[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12measy[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreason[39m[38;5;12m [39m[38;5;12mabout.[39m
|
||||
[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;14m[1mstyle[0m[38;5;14m[1m [0m[38;5;14m[1mof[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;12m [39m[38;5;12m(https://wiki.haskell.org/Functional_programming)[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mmodels[39m[38;5;12m [39m[38;5;12mcomputations[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mevaluation[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mexpressions.[39m[38;5;12m [39m[38;5;12mContrast[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mimperative[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mwhere[39m[38;5;12m [39m[38;5;12mprograms[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mcomposed[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m
|
||||
[38;5;12mstatements[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mchange[39m[38;5;12m [39m[38;5;12mglobal[39m[38;5;12m [39m[38;5;12mstate[39m[38;5;12m [39m[38;5;12mwhen[39m[38;5;12m [39m[38;5;12mexecuted.[39m[38;5;12m [39m[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mtypically[39m[38;5;12m [39m[38;5;12mavoids[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mmutable[39m[38;5;12m [39m[38;5;12mstate[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfavors[39m[38;5;12m [39m[38;5;12m_side-effect[39m[38;5;12m [39m[38;5;12mfree_[39m[38;5;12m [39m[38;5;12mfunctions[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12m_immutable_[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12minstead.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mencourages[39m[38;5;12m [39m[38;5;12mwriting[39m[38;5;12m [39m[38;5;12mcomposable[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdeclarative[39m[38;5;12m [39m
|
||||
[38;5;12mprograms[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12measy[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreason[39m[38;5;12m [39m[38;5;12mabout.[39m
|
||||
|
||||
[38;2;255;187;0m[4mTable of Contents[0m
|
||||
|
||||
@@ -24,23 +24,22 @@
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mContribution[0m[38;5;12m (#contribution)[39m
|
||||
|
||||
[38;2;255;187;0m[4mTags[0m
|
||||
[38;5;12mThese[39m[38;5;12m [39m[38;5;12mmay[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mappended[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mentries.[39m[38;5;12m [39m[38;5;12mEach[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mpreceded[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12m"+"[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12m"-"[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mindicate[39m[38;5;12m [39m[38;5;12mpresence[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mabsence[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mtag's[39m[38;5;12m [39m[38;5;12mmeaning.[39m[38;5;12m [39m[38;5;12m"-"[39m[38;5;12m [39m[38;5;12mtags[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mincluded[39m[38;5;12m [39m[38;5;12mwhen[39m[38;5;12m [39m[38;5;12mthey[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mlikely[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhelp[39m[38;5;12m [39m[38;5;12msomeone[39m[38;5;12m [39m[38;5;12mfilter[39m[38;5;12m [39m
|
||||
[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m[38;5;12mneeds.[39m[38;5;12m [39m[38;5;12mFor[39m[38;5;12m [39m[38;5;12minstance,[39m[38;5;12m [39m[48;5;235m[38;5;249m-TS[49m[39m[38;5;12m [39m[38;5;12mtags[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mprobably[39m[38;5;12m [39m[38;5;12museful[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mTypescript[39m[38;5;12m [39m[38;5;12musers[39m[38;5;12m [39m[38;5;12mscreening[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mtypes,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[48;5;235m[38;5;249m-CT[49m[39m[38;5;12m [39m[38;5;12mtags[39m[38;5;12m [39m[38;5;12mwould[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mless[39m[38;5;12m [39m[38;5;12mlikely[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mhelpful[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12manyone.[39m
|
||||
[38;5;12mThese[39m[38;5;12m [39m[38;5;12mmay[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mappended[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mentries.[39m[38;5;12m [39m[38;5;12mEach[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mpreceded[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12m"+"[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12m"-"[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mindicate[39m[38;5;12m [39m[38;5;12mpresence[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mabsence[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mtag's[39m[38;5;12m [39m[38;5;12mmeaning.[39m[38;5;12m [39m[38;5;12m"-"[39m[38;5;12m [39m[38;5;12mtags[39m[38;5;12m [39m[38;5;12mshould[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mincluded[39m[38;5;12m [39m[38;5;12mwhen[39m[38;5;12m [39m[38;5;12mthey[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mlikely[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhelp[39m[38;5;12m [39m[38;5;12msomeone[39m[38;5;12m [39m[38;5;12mfilter[39m[38;5;12m [39m[38;5;12mlibraries[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m[38;5;12mneeds.[39m[38;5;12m [39m
|
||||
[38;5;12mFor[39m[38;5;12m [39m[38;5;12minstance,[39m[38;5;12m [39m[48;5;235m[38;5;249m-TS[49m[39m[38;5;12m [39m[38;5;12mtags[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mprobably[39m[38;5;12m [39m[38;5;12museful[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mTypescript[39m[38;5;12m [39m[38;5;12musers[39m[38;5;12m [39m[38;5;12mscreening[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mtypes,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[48;5;235m[38;5;249m-CT[49m[39m[38;5;12m [39m[38;5;12mtags[39m[38;5;12m [39m[38;5;12mwould[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mless[39m[38;5;12m [39m[38;5;12mlikely[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mhelpful[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12manyone.[39m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12m__CT__. Category Theory. This library appears to be inspired by Haskell, Scala, or another functional language's library with a grounding in Category Theory.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;12m__TS__. Typescript. This library has typescript types.[39m
|
||||
|
||||
[38;2;255;187;0m[4mLibraries[0m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRamda[0m[38;5;12m [39m[38;5;12m(https://github.com/ramda/ramda)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mdesigned[39m[38;5;12m [39m[38;5;12mspecifically[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mstyle.[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mmakes[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12measy[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m
|
||||
[38;5;12mpipelines[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mnever[39m[38;5;12m [39m[38;5;12mmutates[39m[38;5;12m [39m[38;5;12muser[39m[38;5;12m [39m[38;5;12mdata.[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRamda[0m[38;5;12m [39m[38;5;12m(https://github.com/ramda/ramda)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mdesigned[39m[38;5;12m [39m[38;5;12mspecifically[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mstyle.[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mmakes[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12measy[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mpipelines[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mnever[39m[38;5;12m [39m[38;5;12mmutates[39m[38;5;12m [39m[38;5;12muser[39m[38;5;12m [39m
|
||||
[38;5;12mdata.[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRamda Adjunct[0m[38;5;12m (https://github.com/char0n/ramda-adjunct) is a community-maintained extension of Ramda.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRamda-extension[0m[38;5;12m (https://github.com/tommmyy/ramda-extension) is set of utility point-free functions composed only from Ramda functions.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRambda[0m[38;5;12m (https://github.com/selfrefactor/rambda) - A faster alternative to Ramda in under 10kB.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRambdax[0m[38;5;12m (https://github.com/selfrefactor/rambdax) - Extended version of Rambda[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFolktale[0m[38;5;12m (http://folktale.origamitower.com/) – A standard library for functional programming in JavaScript. Typescript support expected mid-2020. -TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mlodash/fp[0m[38;5;12m [39m[38;5;12m(https://github.com/lodash/lodash/wiki/FP-Guide)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12minstance[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;14m[1mLodash[0m[38;5;12m [39m[38;5;12m(https://github.com/lodash/lodash)[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mits[39m[38;5;12m [39m[38;5;12mmethods[39m[38;5;12m [39m[38;5;12mwrapped[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mproduce[39m[38;5;12m [39m[38;5;12mimmutable,[39m[38;5;12m [39m[38;5;12mauto-curried,[39m[38;5;12m [39m[38;5;12miteratee-first,[39m[38;5;12m [39m[38;5;12mdata-last[39m[38;5;12m [39m
|
||||
[38;5;12mmethods.[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mlodash/fp[0m[38;5;12m (https://github.com/lodash/lodash/wiki/FP-Guide) – An instance of [39m[38;5;14m[1mLodash[0m[38;5;12m (https://github.com/lodash/lodash) with its methods wrapped to produce immutable, auto-curried, iteratee-first, data-last methods. +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfunctional.js[0m[38;5;12m (https://github.com/functionaljs/functional-js) – A lightweight functional JavaScript library that facilitates currying and point-free / tacit programming.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1m101[0m[38;5;12m (https://github.com/tjmehta/101) – A modern and modular JavaScript utility library made to work well with vanilla JavaScript methods. -TS[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfnuc[0m[38;5;12m (https://github.com/algesten/fnuc) – A functional library for CoffeeScript (and JavaScript) to facilitate functional composition and higher order functions.[39m
|
||||
@@ -58,17 +57,15 @@
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mreact-on-lambda[0m[38;5;12m (https://github.com/sultan99/react-on-lambda) - Replace JSX in React with functions (currying, compositions and etc). [39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mtrifl[0m[38;5;12m (https://github.com/algesten/trifl) – A functional user interface library with unidirectional dataflow and a virtual dom.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfuncy[0m[38;5;12m (https://github.com/bramstein/funcy) – An experiment in adding functional pattern matching to JavaScript. _Experimental_ :triangular_flag_on_post:[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdate-fp[0m
|
||||
[38;5;12m (https://github.com/cullophid/date-fp) – A functional utility library for working with JavaScript dates. All functions in date-fp are pure, autocurried and will not mutate the date objects they are applied to.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mdate-fp[0m[38;5;12m (https://github.com/cullophid/date-fp) – A functional utility library for working with JavaScript dates. All functions in date-fp are pure, autocurried and will not mutate the date objects they are applied to.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mjs-joda[0m[38;5;12m (https://github.com/js-joda/js-joda) – An immutable date and time library that provides a simple, domain-driven and clean API based on the ISO8601 calendar.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1m\_part\_[0m[38;5;12m (https://github.com/AutoSponge/_part_) – A micro library that encourages functional programming by making native methods available as partially applied functions.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mclaire[0m[38;5;12m (https://github.com/robotlolita/claire) – A property-based testing library for clearly specifying code invariants and behaviour.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFPO.js[0m[38;5;12m (https://github.com/getify/fpo) – FP library for JavaScript by Kyle Simpson (aka getify). Supports named-argument style methods.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavascript Parser Combinator[0m[38;5;12m (https://github.com/d-plaindoux/parsec) – Javascript parser combinator implementation inspired by the Haskell's Parsec[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfun-task[0m[38;5;12m [39m[38;5;12m(https://github.com/rpominov/fun-task)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mabstraction[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mmanaging[39m[38;5;12m [39m[38;5;12masynchronous[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJS.[39m[38;5;12m [39m[38;5;12mTasks[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12msimilar[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mPromises[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mkey[39m[38;5;12m [39m[38;5;12mdifference[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mTasks[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mrepresent[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcomputation[39m[38;5;12m [39m[38;5;12mwhile[39m[38;5;12m [39m
|
||||
[38;5;12mPromises[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mrepresent[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mresults[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcomputation.[39m[38;5;12m [39m[38;5;12mShips[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mFlow[39m[38;5;12m [39m[38;5;12mtype[39m[38;5;12m [39m[38;5;12mdefinitions.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mmost[0m[38;5;12m [39m[38;5;12m(https://github.com/cujojs/most)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mUltra-high[39m[38;5;12m [39m[38;5;12mperformance[39m[38;5;12m [39m[38;5;12mreactive[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhelp[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mcompose[39m[38;5;12m [39m[38;5;12masynchronous[39m[38;5;12m [39m[38;5;12moperations[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mstreams[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mvalues[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mevents[39m[38;5;12m [39m[38;5;12mwithout[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhazards[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mside[39m[38;5;12m [39m[38;5;12meffects[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m
|
||||
[38;5;12mmutable[39m[38;5;12m [39m[38;5;12mshared[39m[38;5;12m [39m[38;5;12mstate.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfun-task[0m[38;5;12m [39m[38;5;12m(https://github.com/rpominov/fun-task)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mabstraction[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mmanaging[39m[38;5;12m [39m[38;5;12masynchronous[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJS.[39m[38;5;12m [39m[38;5;12mTasks[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12msimilar[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mPromises[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mkey[39m[38;5;12m [39m[38;5;12mdifference[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mTasks[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mrepresent[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcomputation[39m[38;5;12m [39m[38;5;12mwhile[39m[38;5;12m [39m[38;5;12mPromises[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mrepresent[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||||
[38;5;12mresults[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcomputation.[39m[38;5;12m [39m[38;5;12mShips[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mFlow[39m[38;5;12m [39m[38;5;12mtype[39m[38;5;12m [39m[38;5;12mdefinitions.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mmost[0m[38;5;12m (https://github.com/cujojs/most) – Ultra-high performance reactive programming to help you compose asynchronous operations on streams of values and events without many of the hazards of side effects and mutable shared state.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mzen-signals[0m[38;5;12m (https://github.com/joaomilho/zen-signals) – ☯ The simplest signal library possible[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfunfix[0m[38;5;12m (https://github.com/funfix/funfix) – Funfix is a library of type classes and data types for Functional Programming in JavaScript, TypeScript and Flow. +CT, +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mpico-lambda[0m[38;5;12m (https://github.com/trainyard/pico-lambda) - Arrays, Strings and things the functional way. A 640b functional library based on native methods. -TS.[39m
|
||||
@@ -95,10 +92,8 @@
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mts-belt[0m[38;5;12m [39m[38;5;12m(https://mobily.github.io/ts-belt/)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mFast,[39m[38;5;12m [39m[38;5;12mmodern,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12mutility[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mFP[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTypeScript.[39m[38;5;12m [39m[38;5;12m(Uses[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdata-first[39m[38;5;12m [39m[38;5;12mapproach[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mremeda,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;14m[1mfaster[0m[38;5;12m [39m
|
||||
[38;5;12m(https://mobily.github.io/ts-belt/benchmarks/v3.7.0/macbook-air-2020)[39m[38;5;12m [39m[38;5;12mthan[39m[38;5;12m [39m[38;5;12mremeda,[39m[38;5;12m [39m[38;5;12mramda,[39m[38;5;12m [39m[38;5;12mrambda,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlodash/fp.)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfp-multik[0m[38;5;12m (https://github.com/lulldev/fp-multik) - JS/TS lightweight value-multimethod util[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mtrue-myth[0m[38;5;12m [39m[38;5;12m(https://github.com/true-myth/true-myth)[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12msafe,[39m[38;5;12m [39m[38;5;12midiomatic[39m[38;5;12m [39m[38;5;12mnull[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12merror[39m[38;5;12m [39m[38;5;12mhandling[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTypeScript,[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[48;5;235m[38;5;249mMaybe[49m[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[48;5;235m[38;5;249mResult[49m[39m[38;5;12m [39m[38;5;12mtypes,[39m[38;5;12m [39m[38;5;12msupporting[39m[38;5;12m [39m[38;5;12mboth[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mtraditional[39m[38;5;12m [39m
|
||||
[38;5;12mmethod-call[39m[38;5;12m [39m[38;5;12mstyle[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mts-pattern[0m
|
||||
[38;5;12m (https://github.com/gvergnaud/ts-pattern) - The exhaustive Pattern Matching library for TypeScript, with smart type inference. Pattern Matching is a code-branching technique coming from FP languages.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mtrue-myth[0m[38;5;12m (https://github.com/true-myth/true-myth) A library for safe, idiomatic null and error handling in TypeScript, with [39m[48;5;235m[38;5;249mMaybe[49m[39m[38;5;12m and [39m[48;5;235m[38;5;249mResult[49m[39m[38;5;12m types, supporting both a functional style and a more traditional method-call style[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mts-pattern[0m[38;5;12m (https://github.com/gvergnaud/ts-pattern) - The exhaustive Pattern Matching library for TypeScript, with smart type inference. Pattern Matching is a code-branching technique coming from FP languages.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mhyogwa[0m[38;5;12m (https://github.com/ENvironmentSet/hyogwa) - Natural 🌿 effect system that fits TypeScript; Write codes as you write [39m[38;5;14m[1mplain typescript code[0m[38;5;12m.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mVerticalize[0m[38;5;12m (https://github.com/laurentpayot/verticalize) - Super lightweight function that looks and behaves like a pipe operator.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mPureEval[0m[38;5;12m (https://github.com/PureEval/PureEval) - A powerful JavaScript functional programming toolset, including utility functions and abstract data structures.[39m
|
||||
@@ -116,16 +111,12 @@
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mimmutable-sequence.js[0m[38;5;12m (https://github.com/qiao/immutable-sequence.js) – High performance implementation of Immutable Sequence in JavaScript, based on [39m[38;5;14m[1mFinger Trees[0m[38;5;12m (https://github.com/qiao/fingertree.js).[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mTimm[0m[38;5;12m (http://guigrpa.github.io/timm/) – Immutability helpers with fast reads and acceptable writes.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLazy.js[0m[38;5;12m (https://github.com/dtao/lazy.js) – A utility library with a lazy engine under the hood that strives to do as little work as possible while being as flexible as possible.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDerivableJS[0m
|
||||
[38;5;12m (https://github.com/ds300/derivablejs) – Functional Reactive State for JavaScript and TypeScript. DerivableJS enables you to make elegant declarative statements about how your bits of state are related. +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mDerivableJS[0m[38;5;12m (https://github.com/ds300/derivablejs) – Functional Reactive State for JavaScript and TypeScript. DerivableJS enables you to make elegant declarative statements about how your bits of state are related. +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mimlazy[0m[38;5;12m (https://github.com/benji6/imlazy) – Library for creating and manipulating lazy iterables using the ES2015 iteration protocols.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcollectable[0m[38;5;12m (https://github.com/frptools/collectable) – Super high-performance immutable data structures for modern JavaScript and TypeScript applications. +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mList[0m[38;5;12m [39m[38;5;12m(https://github.com/funkia/list)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mextremely[39m[38;5;12m [39m[38;5;12mfast[39m[38;5;12m [39m[38;5;12mimmutable[39m[38;5;12m [39m[38;5;12mlist[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcomprehensive[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mAPI.[39m[38;5;12m [39m[38;5;12mDesigned[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;14m[1mseamlessly[0m[38;5;14m[1m [0m[38;5;14m[1mintegrate[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mRamda[0m[38;5;12m [39m
|
||||
[38;5;12m(https://github.com/funkia/list#seamless-ramda-integration).[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mprelude.ts[0m[38;5;12m [39m[38;5;12m(https://github.com/emmanueltouzery/prelude.ts)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mImmutable[39m[38;5;12m [39m[38;5;12mpersistent[39m[38;5;12m [39m[38;5;12mcollections,[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mconstructs[39m[38;5;12m [39m[38;5;12msuch[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mOption[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mEither,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcombinators.[39m[38;5;12m [39m[38;5;12mImplemented[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTypescript[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12msupports[39m[38;5;12m [39m
|
||||
[38;5;12mjavascript[39m[38;5;12m [39m[38;5;12mtoo.[39m[38;5;12m [39m[38;5;12m+CT,[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mTSTL[0m[38;5;12m [39m[38;5;12m(https://github.com/samchon/tstl)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mC++[39m[38;5;12m [39m[38;5;12mSTL[39m[38;5;12m [39m[38;5;12m(Standard[39m[38;5;12m [39m[38;5;12mTemplate[39m[38;5;12m [39m[38;5;12mLibrary)[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mimplemented[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTypeScript.[39m[38;5;12m [39m[38;5;12mSTL[39m[38;5;12m [39m[38;5;12mContainers,[39m[38;5;12m [39m[38;5;12miterators,[39m[38;5;12m [39m[38;5;12malgorithms[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfunctors,[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mfollowing[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mrule,[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m
|
||||
[38;5;12mprovided.[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mList[0m[38;5;12m (https://github.com/funkia/list) - An extremely fast immutable list with a comprehensive functional API. Designed to [39m[38;5;14m[1mseamlessly integrate with Ramda[0m[38;5;12m (https://github.com/funkia/list#seamless-ramda-integration).[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mprelude.ts[0m[38;5;12m (https://github.com/emmanueltouzery/prelude.ts) - Immutable persistent collections, functional constructs such as Option and Either, and combinators. Implemented in Typescript but supports javascript too. +CT, +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mTSTL[0m[38;5;12m (https://github.com/samchon/tstl) - C++ STL (Standard Template Library) is implemented in TypeScript. STL Containers, iterators, algorithms and functors, that following functional programming rule, are provided. +TS.[39m
|
||||
|
||||
[38;2;255;187;0m[4mAlgebraic Data Types[0m
|
||||
|
||||
@@ -142,14 +133,14 @@
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFluture[0m[38;5;12m (https://github.com/Avaq/Fluture) – A Future library with included control utilities, high performance and great error messages.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfantasy-combinators[0m[38;5;12m (https://github.com/fantasyland/fantasy-combinators) – Common combinators.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfantasy-birds[0m[38;5;12m (https://github.com/fantasyland/fantasy-birds) – Port of the Haskell package Data.Aviary.Birds. Everything for your combinatory needs.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcrocks[0m[38;5;12m [39m[38;5;12m(https://github.com/evilsoft/crocks)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mcollection[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mpopular[39m[38;5;12m [39m[38;5;12mAlgebraic[39m[38;5;12m [39m[38;5;12mData[39m[38;5;12m [39m[38;5;12mTypes[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmain[39m[38;5;12m [39m[38;5;12mgoal[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcurate[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mprovide[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcommon[39m[38;5;12m [39m[38;5;12minterface[39m[38;5;12m [39m[38;5;12mbetween[39m[38;5;12m [39m[38;5;12meach[39m[38;5;12m [39m[38;5;12mtype,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhelper[39m[38;5;12m [39m
|
||||
[38;5;12mfunctions[39m[38;5;12m [39m[38;5;12mneeded[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhit[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mground[39m[38;5;12m [39m[38;5;12mrunning.[39m[38;5;12m [39m[38;5;12m-TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcrocks[0m[38;5;12m [39m[38;5;12m(https://github.com/evilsoft/crocks)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mcollection[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mpopular[39m[38;5;12m [39m[38;5;12mAlgebraic[39m[38;5;12m [39m[38;5;12mData[39m[38;5;12m [39m[38;5;12mTypes[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmain[39m[38;5;12m [39m[38;5;12mgoal[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcurate[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mprovide[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12monly[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mcommon[39m[38;5;12m [39m[38;5;12minterface[39m[38;5;12m [39m[38;5;12mbetween[39m[38;5;12m [39m[38;5;12meach[39m[38;5;12m [39m[38;5;12mtype,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12malso[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhelper[39m[38;5;12m [39m[38;5;12mfunctions[39m[38;5;12m [39m[38;5;12mneeded[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhit[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||||
[38;5;12mground[39m[38;5;12m [39m[38;5;12mrunning.[39m[38;5;12m [39m[38;5;12m-TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mkudo-js[0m[38;5;12m (https://github.com/blitzritz/kudojs) - A small utility library with a set of Algebraic Data Types and Helper functions to help you write code in a functional programming style in Javascript[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mpurify[0m[38;5;12m (https://github.com/gigobyte/purify) - Functional programming library for TypeScript focusing on ADTs. +CT, +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMojiScript[0m[38;5;12m (https://github.com/joelnet/MojiScript)- an async-first, opinionated, and functional language designed to have 100% compatibility with JavaScript engines[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mPratica[0m[38;5;12m (https://github.com/rametta/pratica) - Small, simple, easy FP data types for pragmatic and productive developers who need to ship reliable code fast. +CT, +TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mTifi[0m[38;5;12m [39m[38;5;12m(https://github.com/mobily/tifi)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mTifi[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTypeScript.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12msolves[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mproblem[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mexistence[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mboth[39m[38;5;12m [39m[48;5;235m[38;5;249mundefined[49m[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[48;5;235m[38;5;249mnull[49m[39m[38;5;12m.[39m[38;5;12m [39m[38;5;12mTifi[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12minspired[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mOCaml/Reason[39m[38;5;12m [39m
|
||||
[38;5;12mutilities[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moption[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12mtype.[39m[38;5;12m [39m[38;5;12m+CT,[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mTifi[0m[38;5;12m [39m[38;5;12m(https://github.com/mobily/tifi)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mTifi[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mTypeScript.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12msolves[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mproblem[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mexistence[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mboth[39m[38;5;12m [39m[48;5;235m[38;5;249mundefined[49m[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[48;5;235m[38;5;249mnull[49m[39m[38;5;12m.[39m[38;5;12m [39m[38;5;12mTifi[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12minspired[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mOCaml/Reason[39m[38;5;12m [39m[38;5;12mutilities[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12moption[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m
|
||||
[38;5;12mtype.[39m[38;5;12m [39m[38;5;12m+CT,[39m[38;5;12m [39m[38;5;12m+TS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1msweet-monads[0m[38;5;12m (https://github.com/JSMonk/sweet-monads) - A collection of popular monads (such as [39m[48;5;235m[38;5;249mEither[49m[39m[38;5;12m and [39m[48;5;235m[38;5;249mMaybe[49m[39m[38;5;12m) and the lazy iterator.[39m
|
||||
|
||||
[38;2;255;187;0m[4mLenses[0m
|
||||
@@ -170,77 +161,72 @@
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mPureScript[0m[38;5;12m (http://www.purescript.org/) – A small strongly typed programming language that compiles to JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mIdris[0m[38;5;12m (http://www.idris-lang.org/) – A general purpose pure functional programming language with dependent types.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mGHCJS[0m[38;5;12m (https://github.com/ghcjs/ghcjs) – [39m[38;5;14m[1mHaskell[0m[38;5;12m (https://www.haskell.org/) to JavaScript compiler, based on GHC.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mElixirScript[0m[38;5;12m [39m[38;5;12m(https://github.com/bryanjos/elixirscript)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mCompiles[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12msubset[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;14m[1mElixir[0m[38;5;12m [39m[38;5;12m(http://elixir-lang.org/),[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdynamic,[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mlanguage[39m[38;5;12m [39m[38;5;12mdesigned[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mbuilding[39m[38;5;12m [39m[38;5;12mscalable[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmaintainable[39m[38;5;12m [39m[38;5;12mapplications,[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m
|
||||
[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mElixirScript[0m[38;5;12m (https://github.com/bryanjos/elixirscript) – Compiles a subset of [39m[38;5;14m[1mElixir[0m[38;5;12m (http://elixir-lang.org/), a dynamic, functional language designed for building scalable and maintainable applications, to JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJs\_of\_ocaml[0m[38;5;12m (http://ocsigen.org/js_of_ocaml/) – Compiles [39m[38;5;14m[1mOCaml[0m[38;5;12m (http://ocaml.org/) bytecode to JavaScript, making it possible to run OCaml programs in the browser.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mReason[0m[38;5;12m (https://reasonml.github.io) – Reason is a new interface to OCaml, a highly expressive dialect of the ML language featuring type inference and static type checking.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mReScript[0m[38;5;12m [39m[38;5;12m(https://rescript-lang.org/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12m(previously[39m[38;5;12m [39m[38;5;12mknown[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;14m[1mBucklescript[0m[38;5;12m [39m[38;5;12m(https://rescript-lang.org/bucklescript-rebranding))[39m[38;5;12m [39m[38;5;12mReScript[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mtype-safe[39m[38;5;12m [39m[38;5;12mlanguage[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcompiles[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhighest[39m[38;5;12m [39m[38;5;12mquality[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mclean,[39m[38;5;12m [39m
|
||||
[38;5;12mreadable[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mperformant[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mcode.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mReScript[0m[38;5;12m [39m[38;5;12m(https://rescript-lang.org/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12m(previously[39m[38;5;12m [39m[38;5;12mknown[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;14m[1mBucklescript[0m[38;5;12m [39m[38;5;12m(https://rescript-lang.org/bucklescript-rebranding))[39m[38;5;12m [39m[38;5;12mReScript[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mtype-safe[39m[38;5;12m [39m[38;5;12mlanguage[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcompiles[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhighest[39m[38;5;12m [39m[38;5;12mquality[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mclean,[39m[38;5;12m [39m[38;5;12mreadable[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mperformant[39m[38;5;12m [39m
|
||||
[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mcode.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mScala.js[0m[38;5;12m (http://www.scala-js.org/) – Compiles [39m[38;5;14m[1mScala[0m[38;5;12m (http://www.scala-lang.org/) to JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLiveScript[0m[38;5;12m (http://gkz.github.io/LiveScript/) – LiveScript has a straightforward mapping to JavaScript and allows you to write expressive code devoid of repetitive boilerplate.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mQuack[0m[38;5;12m (https://github.com/quack/quack) - A multi-paradigm programming language with gradual and duck typing that targets PHP and JS.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mion[0m[38;5;12m (https://github.com/ion-lang/ion) - no BS JS[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRamdaScript[0m[38;5;12m (https://github.com/yosbelms/ramdascript) - A Lisp that compiles to opinionated JavaScript on top of RamdaJS[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mRacketScript[0m[38;5;12m (https://github.com/vishesh/racketscript) – RacketScript aims to leverage both JavaScript and Racket's ecosystem, and make interoperability between them clean and smooth.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mKoka[0m
|
||||
[38;5;12m (https://www.microsoft.com/en-us/research/project/koka/) – Koka is a function-oriented programming language that seperates pure values from side-effecting computations with a familiar JavaScript like syntax.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mKoka[0m[38;5;12m (https://www.microsoft.com/en-us/research/project/koka/) – Koka is a function-oriented programming language that seperates pure values from side-effecting computations with a familiar JavaScript like syntax.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mTypeScript[0m[38;5;12m (https://www.typescriptlang.org/) - TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mGleam[0m[38;5;12m (https://gleam.run) - Gleam is a typed, functional language that compiles to Erlang and JavaScript.[39m
|
||||
|
||||
[38;2;255;187;0m[4mProgramming Tools[0m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1meslint-plugin-fp[0m[38;5;12m (https://github.com/jfmengels/eslint-plugin-fp) - ESLint rules for functional programming[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1m4.5[0m[38;5;12m [39m[38;5;12m(https://github.com/TylorS/4.5)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12massertions[39m[38;5;12m [39m[38;5;12mlibrary.[39m[38;5;12m [39m[38;5;12mIf[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mprefer[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mAPIs[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mpractices[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript,[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12maims[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msolve[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mfunctionally-oriented[39m[38;5;12m [39m[38;5;12massertions[39m[38;5;12m [39m
|
||||
[38;5;12mthat[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mlazy[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmonadic.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1m4.5[0m[38;5;12m (https://github.com/TylorS/4.5) – A functional assertions library. If you prefer functional style APIs and practices in JavaScript, this library aims to solve this with functionally-oriented assertions that are lazy and monadic.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mhm-def[0m[38;5;12m (https://github.com/xodio/hm-def) – Runtime type checking for JS with Hindley Milner signatures.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mftor[0m[38;5;12m [39m[38;5;12m(https://github.com/kongware/ftor)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mpluggable[39m[38;5;12m [39m[38;5;12mruntime[39m[38;5;12m [39m[38;5;12mtype[39m[38;5;12m [39m[38;5;12mchecker[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mdebugging[39m[38;5;12m [39m[38;5;12mtool[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12msupports[39m[38;5;12m [39m[38;5;12mparametric[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mrow[39m[38;5;12m [39m[38;5;12mpolymorphism,[39m[38;5;12m [39m[38;5;12mimplicit[39m[38;5;12m [39m[38;5;12mrank-2[39m[38;5;12m [39m[38;5;12mtypes[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12malgebraic[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12mtypes[39m[38;5;12m [39m[38;5;12mvia[39m[38;5;12m [39m[38;5;12mScott[39m[38;5;12m [39m
|
||||
[38;5;12mEncoding.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mftor[0m[38;5;12m (https://github.com/kongware/ftor) - A pluggable runtime type checker and functional debugging tool that supports parametric and row polymorphism, implicit rank-2 types and algebraic data types via Scott Encoding.[39m
|
||||
|
||||
[38;2;255;187;0m[4mResources[0m
|
||||
|
||||
[38;2;255;187;0m[4mBooks[0m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mProfessor[0m[38;5;14m[1m [0m[38;5;14m[1mFrisby’s[0m[38;5;14m[1m [0m[38;5;14m[1mMostly[0m[38;5;14m[1m [0m[38;5;14m[1mAdequate[0m[38;5;14m[1m [0m[38;5;14m[1mGuide[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;12m [39m[38;5;12m(https://github.com/MostlyAdequate/mostly-adequate-guide)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mparadigm[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mgeneral[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mworld’s[39m[38;5;12m [39m[38;5;12mmost[39m[38;5;12m [39m
|
||||
[38;5;12mpopular[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mlanguage:[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mIt’s[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mbuilds[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mintuition[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mreal-world[39m[38;5;12m [39m[38;5;12mexamples.[39m[38;5;12m [39m[38;5;12mStrongly[39m[38;5;12m [39m[38;5;12mrecommended.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mBrian[0m[38;5;14m[1m [0m[38;5;14m[1mLonsdorf[0m[38;5;12m [39m[38;5;12m(https://twitter.com/drboolean)[39m[38;5;12m [39m
|
||||
[38;5;12m(2016)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional-Light[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://github.com/getify/functional-light-js)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mexplores[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcore[39m[38;5;12m [39m[38;5;12mprinciples[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12m(FP)[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mapplied[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mBut[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mmakes[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m
|
||||
[38;5;12mdifferent[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mapproaches[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12mprinciples[39m[38;5;12m [39m[38;5;12mwithout[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mheavy[39m[38;5;12m [39m[38;5;12mterminology.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavaScript[0m[38;5;14m[1m [0m[38;5;14m[1mAllongé[0m[38;5;12m [39m[38;5;12m(https://leanpub.com/javascriptallongesix),[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12m“Six”[39m[38;5;12m [39m[38;5;12medition.[39m[38;5;12m [39m[38;5;12mStarts[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mlittle[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mpossible[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mfunctions[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mno[39m[38;5;12m [39m[38;5;12mless![39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mbuilds[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mtowards[39m[38;5;12m [39m[38;5;12mpowerful[39m[38;5;12m [39m[38;5;12mcombinators[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdecorators.[39m[38;5;12m [39m[38;5;12mA[39m
|
||||
[38;5;12mfoundational[39m[38;5;12m [39m[38;5;12mbook.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mReginald[0m[38;5;14m[1m [0m[38;5;14m[1mBraithwaite[0m[38;5;12m [39m[38;5;12m(https://github.com/raganwald)[39m[38;5;12m [39m[38;5;12m(2016)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://www.manning.com/books/functional-programming-in-javascript)[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mdevelopers[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mwill[39m[38;5;12m [39m[38;5;12mimprove[39m[38;5;12m [39m[38;5;12mextensibility,[39m[38;5;12m [39m[38;5;12mmodularity,[39m[38;5;12m [39m
|
||||
[38;5;12mreusability,[39m[38;5;12m [39m[38;5;12mtestability,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mperformance.[39m[38;5;12m [39m[38;5;12mThrough[39m[38;5;12m [39m[38;5;12mconcrete[39m[38;5;12m [39m[38;5;12mexamples[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mjargon-free[39m[38;5;12m [39m[38;5;12mexplanations,[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mapply[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreal-life[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mtasks.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;12mLuis[39m[38;5;12m [39m[38;5;12mAtencio[39m[38;5;12m [39m[38;5;12m(2016)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mProfessor[0m[38;5;14m[1m [0m[38;5;14m[1mFrisby’s[0m[38;5;14m[1m [0m[38;5;14m[1mMostly[0m[38;5;14m[1m [0m[38;5;14m[1mAdequate[0m[38;5;14m[1m [0m[38;5;14m[1mGuide[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;12m [39m[38;5;12m(https://github.com/MostlyAdequate/mostly-adequate-guide)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mparadigm[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mgeneral[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mworld’s[39m[38;5;12m [39m[38;5;12mmost[39m[38;5;12m [39m[38;5;12mpopular[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m
|
||||
[38;5;12mlanguage:[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mIt’s[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mbuilds[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mintuition[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mreal-world[39m[38;5;12m [39m[38;5;12mexamples.[39m[38;5;12m [39m[38;5;12mStrongly[39m[38;5;12m [39m[38;5;12mrecommended.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mBrian[0m[38;5;14m[1m [0m[38;5;14m[1mLonsdorf[0m[38;5;12m [39m[38;5;12m(https://twitter.com/drboolean)[39m[38;5;12m [39m[38;5;12m(2016)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional-Light[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://github.com/getify/functional-light-js)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mexplores[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mcore[39m[38;5;12m [39m[38;5;12mprinciples[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12m(FP)[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mapplied[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mBut[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mmakes[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mdifferent[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m
|
||||
[38;5;12mapproaches[39m[38;5;12m [39m[38;5;12mthese[39m[38;5;12m [39m[38;5;12mprinciples[39m[38;5;12m [39m[38;5;12mwithout[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mheavy[39m[38;5;12m [39m[38;5;12mterminology.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavaScript[0m[38;5;14m[1m [0m[38;5;14m[1mAllongé[0m[38;5;12m [39m[38;5;12m(https://leanpub.com/javascriptallongesix),[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12m“Six”[39m[38;5;12m [39m[38;5;12medition.[39m[38;5;12m [39m[38;5;12mStarts[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mlittle[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mpossible[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mfunctions[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mno[39m[38;5;12m [39m[38;5;12mless![39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mbuilds[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mtowards[39m[38;5;12m [39m[38;5;12mpowerful[39m[38;5;12m [39m[38;5;12mcombinators[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdecorators.[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mfoundational[39m[38;5;12m [39m[38;5;12mbook.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m
|
||||
[38;5;14m[1mReginald[0m[38;5;14m[1m [0m[38;5;14m[1mBraithwaite[0m[38;5;12m [39m[38;5;12m(https://github.com/raganwald)[39m[38;5;12m [39m[38;5;12m(2016)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://www.manning.com/books/functional-programming-in-javascript)[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mdevelopers[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mwill[39m[38;5;12m [39m[38;5;12mimprove[39m[38;5;12m [39m[38;5;12mextensibility,[39m[38;5;12m [39m[38;5;12mmodularity,[39m[38;5;12m [39m[38;5;12mreusability,[39m[38;5;12m [39m[38;5;12mtestability,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m
|
||||
[38;5;12mperformance.[39m[38;5;12m [39m[38;5;12mThrough[39m[38;5;12m [39m[38;5;12mconcrete[39m[38;5;12m [39m[38;5;12mexamples[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mjargon-free[39m[38;5;12m [39m[38;5;12mexplanations,[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mbook[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mapply[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreal-life[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mtasks.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;12mLuis[39m[38;5;12m [39m[38;5;12mAtencio[39m[38;5;12m [39m[38;5;12m(2016)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mEloquent JavaScript[0m[38;5;12m (http://eloquentjavascript.net/). A modern introduction to programming using JavaScript. By Marijn Haverbeke (2014)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://shop.oreilly.com/product/0636920028857.do)[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mthat’s[39m[38;5;12m [39m[38;5;12mbeautiful,[39m[38;5;12m [39m[38;5;12msafe,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12munderstand[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mtest[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mJavaScript’s[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m
|
||||
[38;5;12msupport.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mMichael[0m[38;5;14m[1m [0m[38;5;14m[1mFogus[0m[38;5;12m [39m[38;5;12m(https://github.com/fogus)[39m[38;5;12m [39m[38;5;12m(2013)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mGrokking[0m[38;5;14m[1m [0m[38;5;14m[1mSimplicity[0m[38;5;12m [39m[38;5;12m(https://www.manning.com/books/grokking-simplicity)[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mfirst[39m[38;5;12m [39m[38;5;12mprinciples.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mexamples[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12mreal-world[39m[38;5;12m [39m[38;5;12mscenarios.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mEric[0m[38;5;14m[1m [0m
|
||||
[38;5;14m[1mNormand[0m[38;5;12m [39m[38;5;12m(https://github.com/ericnormand)[39m[38;5;12m [39m[38;5;12m(2019)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://shop.oreilly.com/product/0636920028857.do)[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mthat’s[39m[38;5;12m [39m[38;5;12mbeautiful,[39m[38;5;12m [39m[38;5;12msafe,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12munderstand[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mtest[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mJavaScript’s[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12msupport.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mMichael[0m[38;5;14m[1m [0m[38;5;14m[1mFogus[0m[38;5;12m [39m
|
||||
[38;5;12m(https://github.com/fogus)[39m[38;5;12m [39m[38;5;12m(2013)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mGrokking[0m[38;5;14m[1m [0m[38;5;14m[1mSimplicity[0m[38;5;12m [39m[38;5;12m(https://www.manning.com/books/grokking-simplicity)[39m[38;5;12m [39m[38;5;12mteaches[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mfirst[39m[38;5;12m [39m[38;5;12mprinciples.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mexamples[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12mreal-world[39m[38;5;12m [39m[38;5;12mscenarios.[39m[38;5;12m [39m[38;5;12mBy[39m[38;5;12m [39m[38;5;14m[1mEric[0m[38;5;14m[1m [0m[38;5;14m[1mNormand[0m[38;5;12m [39m
|
||||
[38;5;12m(https://github.com/ericnormand)[39m[38;5;12m [39m[38;5;12m(2019)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mscriptum[0m[38;5;12m (https://github.com/kongware/scriptum/blob/master/README.md) - a no-frills functional programming library and a online course based on it[39m
|
||||
|
||||
[38;2;255;187;0m[4mArticles[0m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFP[0m[38;5;14m[1m [0m[38;5;14m[1mConcepts[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://medium.com/@collardeau/intro-to-functional-programming-concepts-in-javascript-b0650773139c)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mProgramming[39m[38;5;12m [39m[38;5;12mConcepts[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mUses[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mRamda[39m
|
||||
[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mteach[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mconcepts[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcomposition,[39m[38;5;12m [39m[38;5;12mpointfree[39m[38;5;12m [39m[38;5;12mstyle,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfunctors[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msimplest[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mexamples.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://stephen-young.me.uk/2013/01/20/functional-programming-with-javascript.html)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAnother[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mProgramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfocus[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthree[39m[38;5;12m [39m
|
||||
[38;5;12mkey[39m[38;5;12m [39m[38;5;12mthemes:[39m[38;5;12m [39m[38;5;12mcomputation[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mfunctions,[39m[38;5;12m [39m[38;5;12mstatelessness,[39m[38;5;12m [39m[38;5;12mavoiding[39m[38;5;12m [39m[38;5;12mside[39m[38;5;12m [39m[38;5;12meffects.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mA[0m[38;5;14m[1m [0m[38;5;14m[1mgentle[0m[38;5;14m[1m [0m[38;5;14m[1mintroduction[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mfunctional[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://jrsinclair.com/articles/2016/gentle-introduction-to-functional-javascript-intro/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mfour-part[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m
|
||||
[38;5;12mthat[39m[38;5;12m [39m[38;5;12mgets[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mspeed[39m[38;5;12m [39m[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhype[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mabout.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFP[0m[38;5;14m[1m [0m[38;5;14m[1mConcepts[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://medium.com/@collardeau/intro-to-functional-programming-concepts-in-javascript-b0650773139c)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mProgramming[39m[38;5;12m [39m[38;5;12mConcepts[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript.[39m[38;5;12m [39m[38;5;12mUses[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mRamda[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mteach[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||||
[38;5;12mconcepts[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcomposition,[39m[38;5;12m [39m[38;5;12mpointfree[39m[38;5;12m [39m[38;5;12mstyle,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfunctors[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msimplest[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mexamples.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1mwith[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://stephen-young.me.uk/2013/01/20/functional-programming-with-javascript.html)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mAnother[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mFunctional[39m[38;5;12m [39m[38;5;12mProgramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mfocus[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mthree[39m[38;5;12m [39m[38;5;12mkey[39m[38;5;12m [39m[38;5;12mthemes:[39m[38;5;12m [39m[38;5;12mcomputation[39m[38;5;12m [39m[38;5;12mas[39m
|
||||
[38;5;12mthe[39m[38;5;12m [39m[38;5;12mapplication[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mfunctions,[39m[38;5;12m [39m[38;5;12mstatelessness,[39m[38;5;12m [39m[38;5;12mavoiding[39m[38;5;12m [39m[38;5;12mside[39m[38;5;12m [39m[38;5;12meffects.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mA[0m[38;5;14m[1m [0m[38;5;14m[1mgentle[0m[38;5;14m[1m [0m[38;5;14m[1mintroduction[0m[38;5;14m[1m [0m[38;5;14m[1mto[0m[38;5;14m[1m [0m[38;5;14m[1mfunctional[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://jrsinclair.com/articles/2016/gentle-introduction-to-functional-javascript-intro/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mfour-part[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mgets[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mspeed[39m[38;5;12m [39m
|
||||
[38;5;12mwhat[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mhype[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mall[39m[38;5;12m [39m[38;5;12mabout.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctors from first principle - explained with JS[0m[38;5;12m (https://dev.to/snird/functors-from-first-principle-37lh) - Explaining functors concept using JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWhy Curry Helps[0m[38;5;12m (https://hughfdjackson.com/javascript/why-curry-helps/) – A short overview of how to write reusable and declarative code using currying.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFavoring Curry[0m[38;5;12m (http://fr.umio.us/favoring-curry/) - Practical applications of currying using Ramda.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Mumbo Jumbo – ADTs[0m[38;5;12m (http://blog.jenkster.com/2016/06/functional-mumbo-jumbo-adts.html) – A beginner-friendly introduction to Algebraic Data Types.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavaScript[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mType[0m[38;5;14m[1m [0m[38;5;14m[1mThinking[0m[38;5;12m [39m[38;5;12m(https://medium.com/@yelouafi/javascript-and-type-thinking-735edddc388d)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mLearn[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreason[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12myour[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12m_type[39m[38;5;12m [39m[38;5;12mthinking_.[39m[38;5;12m [39m[38;5;12mAlgebraic[39m[38;5;12m [39m[38;5;12mData[39m[38;5;12m [39m[38;5;12mTypes[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mintroduced[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12ma[39m
|
||||
[38;5;12mconceptual[39m[38;5;12m [39m[38;5;12mbasis[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mreason[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mprogram[39m[38;5;12m [39m[38;5;12mentities.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLazy,[0m[38;5;14m[1m [0m[38;5;14m[1mcomposable,[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mmodular[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://codewords.recurse.com/issues/four/lazy-composable-and-modular-javascript)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mUse[39m[38;5;12m [39m[38;5;12mfour[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mfeatures[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mES6[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12miterables,[39m[38;5;12m [39m[38;5;12mgenerators,[39m[38;5;12m [39m[38;5;12mfat[39m[38;5;12m [39m[38;5;12marrows,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfor-of[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m
|
||||
[38;5;12mconjunction[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mhigher-order[39m[38;5;12m [39m[38;5;12mfunctions,[39m[38;5;12m [39m[38;5;12mfunction[39m[38;5;12m [39m[38;5;12mcomposition,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlazy[39m[38;5;12m [39m[38;5;12mevaluation,[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mwrite[39m[38;5;12m [39m[38;5;12mcleaner[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mmodular[39m[38;5;12m [39m[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWhy[0m[38;5;14m[1m [0m[38;5;14m[1mRamda[0m[38;5;12m [39m[38;5;12m(http://fr.umio.us/why-ramda/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mTo[39m[38;5;12m [39m[38;5;12mthose[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mused[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming,[39m[38;5;12m [39m[38;5;12mRamda[39m[38;5;12m [39m[38;5;12mseems[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mserve[39m[38;5;12m [39m[38;5;12mno[39m[38;5;12m [39m[38;5;12mpurpose[39m[38;5;12m [39m[38;5;12mwhatsoever.[39m[38;5;12m [39m[38;5;12mHowever,[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mdoes[39m[38;5;12m [39m[38;5;12moffer[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdifferent[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcoding,[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mthat’s[39m[38;5;12m [39m[38;5;12mtaken[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m
|
||||
[38;5;12mgranted[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mpurely[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mlanguages:[39m[38;5;12m [39m[38;5;12mRamda[39m[38;5;12m [39m[38;5;12mmakes[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuild[39m[38;5;12m [39m[38;5;12mcomplex[39m[38;5;12m [39m[38;5;12mlogic[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mcomposition.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavaScript and Type Thinking[0m
|
||||
[38;5;12m (https://medium.com/@yelouafi/javascript-and-type-thinking-735edddc388d) – Learn to reason about your JavaScript code with _type thinking_. Algebraic Data Types are introduced as a conceptual basis to reason about program entities.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLazy,[0m[38;5;14m[1m [0m[38;5;14m[1mcomposable,[0m[38;5;14m[1m [0m[38;5;14m[1mand[0m[38;5;14m[1m [0m[38;5;14m[1mmodular[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://codewords.recurse.com/issues/four/lazy-composable-and-modular-javascript)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mUse[39m[38;5;12m [39m[38;5;12mfour[39m[38;5;12m [39m[38;5;12mnew[39m[38;5;12m [39m[38;5;12mfeatures[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mES6[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12miterables,[39m[38;5;12m [39m[38;5;12mgenerators,[39m[38;5;12m [39m[38;5;12mfat[39m[38;5;12m [39m[38;5;12marrows,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfor-of[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mconjunction[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m
|
||||
[38;5;12mhigher-order[39m[38;5;12m [39m[38;5;12mfunctions,[39m[38;5;12m [39m[38;5;12mfunction[39m[38;5;12m [39m[38;5;12mcomposition,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlazy[39m[38;5;12m [39m[38;5;12mevaluation,[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mwrite[39m[38;5;12m [39m[38;5;12mcleaner[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mmodular[39m[38;5;12m [39m[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mWhy[0m[38;5;14m[1m [0m[38;5;14m[1mRamda[0m[38;5;12m [39m[38;5;12m(http://fr.umio.us/why-ramda/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mTo[39m[38;5;12m [39m[38;5;12mthose[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mused[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming,[39m[38;5;12m [39m[38;5;12mRamda[39m[38;5;12m [39m[38;5;12mseems[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mserve[39m[38;5;12m [39m[38;5;12mno[39m[38;5;12m [39m[38;5;12mpurpose[39m[38;5;12m [39m[38;5;12mwhatsoever.[39m[38;5;12m [39m[38;5;12mHowever,[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mdoes[39m[38;5;12m [39m[38;5;12moffer[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mdifferent[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcoding,[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mstyle[39m[38;5;12m [39m[38;5;12mthat’s[39m[38;5;12m [39m[38;5;12mtaken[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mgranted[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mpurely[39m[38;5;12m [39m
|
||||
[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mlanguages:[39m[38;5;12m [39m[38;5;12mRamda[39m[38;5;12m [39m[38;5;12mmakes[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12myou[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuild[39m[38;5;12m [39m[38;5;12mcomplex[39m[38;5;12m [39m[38;5;12mlogic[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mcomposition.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMonads in JavaScript[0m[38;5;12m (https://curiosity-driven.org/monads-in-javascript) – An introduction to the Monad design pattern in JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mA[0m[38;5;14m[1m [0m[38;5;14m[1mMonad[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mPracticality:[0m[38;5;14m[1m [0m[38;5;14m[1mFirst-Class[0m[38;5;14m[1m [0m[38;5;14m[1mFailures[0m[38;5;12m [39m[38;5;12m(http://robotlolita.me/2013/12/08/a-monad-in-practicality-first-class-failures.html)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mwalk[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12msome[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mcases[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mspecific[39m[38;5;12m [39m[38;5;12mmonadic[39m[38;5;12m [39m[38;5;12mstructures[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m
|
||||
[38;5;12mJavaScript:[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[48;5;235m[38;5;249mMaybe[49m[39m[38;5;12m [39m[38;5;12mmonad[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhandle[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mfailure[39m[38;5;12m [39m[38;5;12mcases[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmodel[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mcomplex[39m[38;5;12m [39m[38;5;12mscenarios[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[48;5;235m[38;5;249mEither[49m[39m[38;5;12m [39m[38;5;12mmonad[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[48;5;235m[38;5;249mValidation[49m[39m[38;5;12m [39m[38;5;12mapplicative[39m[38;5;12m [39m[38;5;12mfunctor.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mA[0m[38;5;14m[1m [0m[38;5;14m[1mMonad[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mPracticality:[0m[38;5;14m[1m [0m[38;5;14m[1mFirst-Class[0m[38;5;14m[1m [0m[38;5;14m[1mFailures[0m[38;5;12m [39m[38;5;12m(http://robotlolita.me/2013/12/08/a-monad-in-practicality-first-class-failures.html)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mwalk[39m[38;5;12m [39m[38;5;12mthrough[39m[38;5;12m [39m[38;5;12msome[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mcases[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mspecific[39m[38;5;12m [39m[38;5;12mmonadic[39m[38;5;12m [39m[38;5;12mstructures[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript:[39m[38;5;12m [39m[38;5;12muse[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[48;5;235m[38;5;249mMaybe[49m[39m[38;5;12m [39m
|
||||
[38;5;12mmonad[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mhandle[39m[38;5;12m [39m[38;5;12msimple[39m[38;5;12m [39m[38;5;12mfailure[39m[38;5;12m [39m[38;5;12mcases[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmodel[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12mcomplex[39m[38;5;12m [39m[38;5;12mscenarios[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[48;5;235m[38;5;249mEither[49m[39m[38;5;12m [39m[38;5;12mmonad[39m[38;5;12m [39m[38;5;12mor[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[48;5;235m[38;5;249mValidation[49m[39m[38;5;12m [39m[38;5;12mapplicative[39m[38;5;12m [39m[38;5;12mfunctor.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional programming[0m[38;5;12m (https://glebbahmutov.com/blog/tags/functional/) – Many articles on various aspects of functional programming in JavaScript by Gleb Bahmutov.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Programming Jargon[0m[38;5;12m (https://github.com/hemanth/functional-programming-jargon) – Jargon from the functional programming world explained in JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mData[0m[38;5;14m[1m [0m[38;5;14m[1mStructures[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(http://blog.benoitvallon.com/data-structures-in-javascript/data-structures-in-javascript/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mblog[39m[38;5;12m [39m[38;5;12mposts[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mreimplements[39m[38;5;12m [39m[38;5;12mvarious[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12mstructures[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m
|
||||
[38;5;12mbetter[39m[38;5;12m [39m[38;5;12munderstand[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m[38;5;12mbenefits[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mdownsides.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mData Structures in JavaScript[0m
|
||||
[38;5;12m (http://blog.benoitvallon.com/data-structures-in-javascript/data-structures-in-javascript/) – A series of blog posts that reimplements various data structures in JavaScript to better understand their benefits and downsides.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mSo You Want to be a Functional Programmer[0m
|
||||
[38;5;12m (https://medium.com/@cscalfani/so-you-want-to-be-a-functional-programmer-part-1-1f15e387e536) - Easy to understand, with some examples, introduction to Functional Programming in Javascript and Elm.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Programming for JavaScript People[0m
|
||||
@@ -249,48 +235,44 @@
|
||||
[38;5;12m (https://auth0.com/blog/intro-to-immutable-js/) - Learn about functional data structures and their uses in this overview of Facebook's popular library for JavaScript: Immutable.js.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mMaster the JavaScript Interview: What is Functional Programming?[0m
|
||||
[38;5;12m (https://medium.com/javascript-scene/master-the-javascript-interview-what-is-functional-programming-7f218c68b3a0) - A simple introduction by @ericelliott to functional principles and vocabulary.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mComposing[0m[38;5;14m[1m [0m[38;5;14m[1mSoftware[0m[38;5;12m [39m[38;5;12m(https://medium.com/javascript-scene/the-rise-and-fall-and-rise-of-functional-programming-composable-software-c2d91b424c8c)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12marticles[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mlearning[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m
|
||||
[38;5;12mcompositional[39m[38;5;12m [39m[38;5;12msoftware[39m[38;5;12m [39m[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mES6+[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mground[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12m@ericelliott.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mComposing[0m[38;5;14m[1m [0m[38;5;14m[1mSoftware[0m[38;5;12m [39m[38;5;12m(https://medium.com/javascript-scene/the-rise-and-fall-and-rise-of-functional-programming-composable-software-c2d91b424c8c)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12marticles[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mlearning[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcompositional[39m[38;5;12m [39m[38;5;12msoftware[39m[38;5;12m [39m
|
||||
[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mES6+[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mground[39m[38;5;12m [39m[38;5;12mup[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12m@ericelliott.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAnonymous Recursion in JavaScript[0m[38;5;12m (https://dev.to/simov/anonymous-recursion-in-javascript) - Short and easy to understand article about implementing anonymous recursion in JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Composition in Javascript[0m[38;5;12m (https://joecortopassi.com/articles/functional-composition-in-javascript/) – Step by step explanation of how to compose functions in javascript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mPrinciples[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavascript[0m[38;5;12m [39m[38;5;12m(https://medium.freecodecamp.org/functional-programming-principles-in-javascript-1b8fc6c3563f)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mPractical[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mexamples[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mlearn[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mconcepts[39m
|
||||
[38;5;12mlike[39m[38;5;12m [39m[38;5;12mpure[39m[38;5;12m [39m[38;5;12mfunction,[39m[38;5;12m [39m[38;5;12mimmutability,[39m[38;5;12m [39m[38;5;12mfirst-class[39m[38;5;12m [39m[38;5;12mentities,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mhigher[39m[38;5;12m [39m[38;5;12morder[39m[38;5;12m [39m[38;5;12mfunctions[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1mPrinciples[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavascript[0m[38;5;12m [39m[38;5;12m(https://medium.freecodecamp.org/functional-programming-principles-in-javascript-1b8fc6c3563f)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mPractical[39m[38;5;12m [39m[38;5;12mcode[39m[38;5;12m [39m[38;5;12mexamples[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mlearn[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mconcepts[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mpure[39m[38;5;12m [39m[38;5;12mfunction,[39m[38;5;12m [39m
|
||||
[38;5;12mimmutability,[39m[38;5;12m [39m[38;5;12mfirst-class[39m[38;5;12m [39m[38;5;12mentities,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mhigher[39m[38;5;12m [39m[38;5;12morder[39m[38;5;12m [39m[38;5;12mfunctions[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mBasic Monads in Javascript[0m[38;5;12m (https://dev.to/rametta/basic-monads-in-javascript-3el3) - Introduction to 2 easy monads in Javascript, Maybe & Either.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mF# for JavaScript Devs[0m[38;5;12m (https://dev.to/rametta/f-for-js-devs-2b88) - Showcasing the similarities between F# and JavaScript[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mA practical guide to writing more functional Javascript[0m
|
||||
[38;5;12m (https://medium.com/@nadeesha/a-practical-guide-to-writing-more-functional-javascript-db49409f71) - A step by step guide to convert imperative JavaScript to more declarative, functional JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mYou[0m[38;5;14m[1m [0m[38;5;14m[1mdon't[0m[38;5;14m[1m [0m[38;5;14m[1m(may[0m[38;5;14m[1m [0m[38;5;14m[1mnot)[0m[38;5;14m[1m [0m[38;5;14m[1mneed[0m[38;5;14m[1m [0m[38;5;14m[1mloops[0m[38;5;14m[1m [0m[38;5;14m[1m➿[0m[38;5;12m [39m[38;5;12m(https://github.com/you-dont-need/You-Dont-Need-Loops)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mLoops[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mone[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfirst[39m[38;5;12m [39m[38;5;12mconstructs[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mjunior[39m[38;5;12m [39m[38;5;12mprogrammers[39m[38;5;12m [39m[38;5;12mlearn,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mthey[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mpose[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mpotential[39m[38;5;12m [39m[38;5;12missues[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||||
[38;5;12msoftware[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m[38;5;12mprocess,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcould[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mavoided[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mcases.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mYou[0m[38;5;14m[1m [0m[38;5;14m[1mdon't[0m[38;5;14m[1m [0m[38;5;14m[1m(may[0m[38;5;14m[1m [0m[38;5;14m[1mnot)[0m[38;5;14m[1m [0m[38;5;14m[1mneed[0m[38;5;14m[1m [0m[38;5;14m[1mloops[0m[38;5;14m[1m [0m[38;5;14m[1m➿[0m[38;5;12m [39m[38;5;12m(https://github.com/you-dont-need/You-Dont-Need-Loops)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mLoops[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mone[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfirst[39m[38;5;12m [39m[38;5;12mconstructs[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mjunior[39m[38;5;12m [39m[38;5;12mprogrammers[39m[38;5;12m [39m[38;5;12mlearn,[39m[38;5;12m [39m[38;5;12mbut[39m[38;5;12m [39m[38;5;12mthey[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mpose[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mpotential[39m[38;5;12m [39m[38;5;12missues[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12msoftware[39m[38;5;12m [39m[38;5;12mdevelopment[39m[38;5;12m [39m
|
||||
[38;5;12mprocess,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcould[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12mavoided[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mmany[39m[38;5;12m [39m[38;5;12mcases.[39m
|
||||
|
||||
[38;2;255;187;0m[4mVideos[0m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mClassroom Coding with Prof. Frisby[0m
|
||||
[38;5;12m (https://www.youtube.com/watch?v=h_tkIpwbsxY&list=PLK_hdtAJ4KqX0JOs_KMAmUNTNMRYhWEaC) – A series that builds a “practical” web application with React and functional programming in JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mClassroom Coding with Prof. Frisby[0m[38;5;12m (https://www.youtube.com/watch?v=h_tkIpwbsxY&list=PLK_hdtAJ4KqX0JOs_KMAmUNTNMRYhWEaC) – A series that builds a “practical” web application with React and functional programming in JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mHey Underscore, You're Doing It Wrong![0m[38;5;12m (https://www.youtube.com/watch?v=m3svKOdZijA) – Underscore.js claims to be a functional programming library, but is it really?[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional programming patterns for the non-mathematician[0m[38;5;12m (https://www.youtube.com/watch?v=AvgwKjTPMmM) – Learn about practical use cases for functors, applicatives, and monads.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mPure JavaScript[0m[38;5;12m (https://vimeo.com/49384334) – Christian Johansen will show you how you can significantly up your game by leaving loops behind and embracing functions as the primary unit of abstraction.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/playlist?list=PL0zVEGEvSaeEd9hlmCXrk5yUyqUag-n84)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mMattias[39m[38;5;12m [39m[38;5;12mPetter[39m[38;5;12m [39m[38;5;12mJohansson,[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12myoutube[39m[38;5;12m [39m[38;5;12mchannel[39m[38;5;12m [39m[38;5;12mFunFunFunction,[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m
|
||||
[38;5;12mspecifically[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mpopularization[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mTypeScript[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/playlist?list=PLuPevXgCPUIMbCxBEnc1dNwboH6e2ImQo)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mDiscover[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mTypescript[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mlibrary[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mfp-ts[39m[38;5;12m [39m[38;5;12malongside[39m[38;5;12m [39m
|
||||
[38;5;12mSahand[39m[38;5;12m [39m[38;5;12mJavid[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mbeginner-friendly[39m[38;5;12m [39m[38;5;12mYouTube[39m[38;5;12m [39m[38;5;12mplaylist.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mprogramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://www.youtube.com/playlist?list=PL0zVEGEvSaeEd9hlmCXrk5yUyqUag-n84)[39m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mA[39m[38;5;12m [39m[38;5;12mseries[39m[38;5;12m [39m[38;5;12mby[39m[38;5;12m [39m[38;5;12mMattias[39m[38;5;12m [39m[38;5;12mPetter[39m[38;5;12m [39m[38;5;12mJohansson,[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12myoutube[39m[38;5;12m [39m[38;5;12mchannel[39m[38;5;12m [39m[38;5;12mFunFunFunction,[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mspecifically[39m[38;5;12m [39m[38;5;12mabout[39m[38;5;12m [39m[38;5;12mpopularization[39m
|
||||
[38;5;12mof[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Programming in TypeScript[0m
|
||||
[38;5;12m (https://www.youtube.com/playlist?list=PLuPevXgCPUIMbCxBEnc1dNwboH6e2ImQo) - Discover functional programming with Typescript and create a library like fp-ts alongside Sahand Javid in this beginner-friendly YouTube playlist.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAnjana Vakil: Learning Functional Programming with JavaScript - JSUnconf 2016[0m[38;5;12m (https://www.youtube.com/watch?v=e-5obm1G_FY) - A simple and understandable introduction of functional proramming in javascript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Programming Basics In ES6[0m[38;5;12m (https://www.youtube.com/watch?v=FYXpOjwYzcs) - A complete introduction to functional programming in javascript made it easy by ES6.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavaScript Programmers Should Learn Algebraic Data Types -- May 2018 -- UtahJS Lehi[0m
|
||||
[38;5;12m (https://www.youtube.com/watch?v=B0VoyujJWIE) - Seth House explains how ADTs (Algebraic Data Types) can be useful to JavaScript developers.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mJavaScript Programmers Should Learn Algebraic Data Types -- May 2018 -- UtahJS Lehi[0m[38;5;12m (https://www.youtube.com/watch?v=B0VoyujJWIE) - Seth House explains how ADTs (Algebraic Data Types) can be useful to JavaScript developers.[39m
|
||||
|
||||
[38;2;255;187;0m[4mExamples and Exercises[0m
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFPJS-Class[0m[38;5;12m (https://github.com/loop-recur/FPJS-Class) – Functional Programming learned through JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfunctional-javascript-workshop[0m[38;5;12m [39m[38;5;12m(https://github.com/timoxley/functional-javascript-workshop)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mgoal[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mworkshop[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mrealistic[39m[38;5;12m [39m[38;5;12mproblems[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12msolved[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mterse,[39m[38;5;12m [39m[38;5;12mvanilla,[39m[38;5;12m [39m[38;5;12midiomatic[39m[38;5;12m [39m
|
||||
[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mteach[39m[38;5;12m [39m[38;5;12mfundamental[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mfeatures[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfunctional-javascript-workshop[0m[38;5;12m [39m[38;5;12m(https://github.com/timoxley/functional-javascript-workshop)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mgoal[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthis[39m[38;5;12m [39m[38;5;12mworkshop[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mcreate[39m[38;5;12m [39m[38;5;12mrealistic[39m[38;5;12m [39m[38;5;12mproblems[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12mcan[39m[38;5;12m [39m[38;5;12mbe[39m[38;5;12m [39m[38;5;12msolved[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mterse,[39m[38;5;12m [39m[38;5;12mvanilla,[39m[38;5;12m [39m[38;5;12midiomatic[39m[38;5;12m [39m[38;5;12mJavaScript[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mteach[39m[38;5;12m [39m[38;5;12mfundamental[39m
|
||||
[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mfeatures[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mJavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mfunctional-frontend-architecture[0m[38;5;12m (https://github.com/paldepind/functional-frontend-architecture) – A functional frontend framework. Based on Ramda + union-type-js + Flyd + Snabbdom[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mcube-composer[0m[38;5;12m (https://github.com/sharkdp/cube-composer) – A puzzle game inspired by functional programming.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFP Youtube Search[0m[38;5;12m (https://github.com/jaysoo/example-fp-youtube-search) – YouTube search app with ReactJS, Redux, and FP concepts[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mHardcore[0m[38;5;14m[1m [0m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://frontendmasters.com/courses/functional-javascript/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mLearn[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mapply[39m[38;5;12m [39m[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mforefront[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcomputer[39m[38;5;12m [39m[38;5;12mscience[39m[38;5;12m [39m[38;5;12mresearch[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msolve[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m
|
||||
[38;5;12mproblems[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavascript.[39m[38;5;12m [39m[38;5;12mDiscover[39m[38;5;12m [39m[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msee[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mdemonstrated[39m[38;5;12m [39m[38;5;12mstep-by-step[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuild[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mexample[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mabstract[39m[38;5;12m [39m[38;5;12minterfaces[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mMonads,[39m[38;5;12m [39m[38;5;12mFunctors,[39m[38;5;12m [39m[38;5;12mMonoids[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mApplicatives.[39m[38;5;12m [39m
|
||||
[38;5;12m(_commercial_)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mEscape from Callback Mountain[0m
|
||||
[38;5;12m (https://github.com/justsml/escape-from-callback-mountain) - Design & refactoring tips for Promise-based Functional JavaScript. Key benefits include better readability, testability, and reusability. MIT.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mHardcore[0m[38;5;14m[1m [0m[38;5;14m[1mFunctional[0m[38;5;14m[1m [0m[38;5;14m[1mProgramming[0m[38;5;14m[1m [0m[38;5;14m[1min[0m[38;5;14m[1m [0m[38;5;14m[1mJavaScript[0m[38;5;12m [39m[38;5;12m(https://frontendmasters.com/courses/functional-javascript/)[39m[38;5;12m [39m[38;5;12m–[39m[38;5;12m [39m[38;5;12mLearn[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mapply[39m[38;5;12m [39m[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12mfrom[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mforefront[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mcomputer[39m[38;5;12m [39m[38;5;12mscience[39m[38;5;12m [39m[38;5;12mresearch[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msolve[39m[38;5;12m [39m[38;5;12mpractical[39m[38;5;12m [39m[38;5;12mproblems[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mJavascript.[39m[38;5;12m [39m[38;5;12mDiscover[39m
|
||||
[38;5;12mfunctional[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msee[39m[38;5;12m [39m[38;5;12mit[39m[38;5;12m [39m[38;5;12mdemonstrated[39m[38;5;12m [39m[38;5;12mstep-by-step[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m[38;5;12mhow[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbuild[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mexample[39m[38;5;12m [39m[38;5;12mweb[39m[38;5;12m [39m[38;5;12mapp[39m[38;5;12m [39m[38;5;12musing[39m[38;5;12m [39m[38;5;12mabstract[39m[38;5;12m [39m[38;5;12minterfaces[39m[38;5;12m [39m[38;5;12mlike[39m[38;5;12m [39m[38;5;12mMonads,[39m[38;5;12m [39m[38;5;12mFunctors,[39m[38;5;12m [39m[38;5;12mMonoids[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mApplicatives.[39m[38;5;12m [39m[38;5;12m(_commercial_)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mEscape from Callback Mountain[0m[38;5;12m (https://github.com/justsml/escape-from-callback-mountain) - Design & refactoring tips for Promise-based Functional JavaScript. Key benefits include better readability, testability, and reusability. MIT.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mLearn Rx[0m[38;5;12m (http://reactivex.io/learnrx/) – A series of interactive exercises introducing five basic ingredients of functional (reactive) programming: the [39m[48;5;235m[38;5;249mmap[49m[39m[38;5;12m, [39m[48;5;235m[38;5;249mfilter[49m[39m[38;5;12m, [39m[48;5;235m[38;5;249mconcatAll[49m[39m[38;5;12m, [39m[48;5;235m[38;5;249mreduce[49m[39m[38;5;12m, and [39m[48;5;235m[38;5;249mzip[49m[39m[38;5;12m functions.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mHoldem Evaluator[0m[38;5;12m (https://github.com/laberin/holdem-eval) - Yet another Holdem Evaluator with Ramda functional style[39m
|
||||
|
||||
@@ -300,8 +282,7 @@
|
||||
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mAwesome FRP JS[0m[38;5;12m (https://github.com/stoeffel/awesome-frp-js) – A curated list of awesome (functional) reactive programming stuff in JavaScript.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mlucasviola/Awesome Functional Programming[0m[38;5;12m (https://github.com/lucasviola/awesome-functional-programming) – Awesome resources on functional programming theory and learning materials.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mxgrommx/Awesome Functional Programming[0m
|
||||
[38;5;12m (https://github.com/xgrommx/awesome-functional-programming) – A ton of articles on functional programming, as well as a huge list of functional libraries for many programming languages.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mxgrommx/Awesome Functional Programming[0m[38;5;12m (https://github.com/xgrommx/awesome-functional-programming) – A ton of articles on functional programming, as well as a huge list of functional libraries for many programming languages.[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mFunctional Programming Resources In JavaScript[0m[38;5;12m (https://github.com/busypeoples/functional-programming-javascript)[39m
|
||||
[48;5;12m[38;5;11m⟡[49m[39m[38;5;12m [39m[38;5;14m[1mtk-learning-center/Functional Programming Learning Path[0m[38;5;12m (https://github.com/tk-learning-center/functional-programming-learning-path) - A Learning Path for Functional Programming[39m
|
||||
|
||||
|
||||
Reference in New Issue
Block a user