仕様・相互運用(Standards)
-
Fantasy Land spec(JSの代数的構造の相互運用規約) GitHub
-
fantasy-laws(Functor/Monadなどの法則テスト) GitHub
-
Static Land(メソッドではなく“静的関数”で定義する派生仕様) GitHub+1
コアOSS(JavaScript)
-
Ramda(関数合成・カリー化・不変)— 公式サイト/ドキュメント/GitHub ramdajs.com+1GitHub
-
Sanctuary(安全志向・実行時型チェック/FL準拠)— サイト/GitHub/型クラス群 sanctuary.js.orgGitHub+1
-
Folktale(ADT/Validation/Task など)— ドキュメント/GitHub(※現在は非アクティブ) folktale.github.ioGitHub
-
Fluture(Future/Task 系の非同期合成)— GitHub GitHub
-
crocks(Maybe/Either/State/Reader…のADT一式)— サイト/GitHub crocks.devGitHub
-
Monet.js(モナド群)— GitHub GitHub
-
daggy(タグ付き合併型=Sum Type を定義)— GitHub GitHub
-
union-type(軽量Union Type実装)— GitHub GitHub
-
(参考)Ramda-Fantasy は既にメンテ停止。代替として Sanctuary や Folktale 等が推奨。 GitHub
TypeScript圏(参考:JSからの橋渡し)
-
fp-ts(TSでの型安全な抽象)— GitHub/公式ドキュメント GitHubgcanti.github.io
-
Effect(旧 effect-ts)(エフェクトシステム/並行・失敗管理)— 公式サイト/GitHub/Docs effect.websiteGitHubeffect-ts.github.io
技法の解説(トランポリン/CPS/ポイントフリー)
-
Trampoline 概説(Reginald “raganwald” Braithwaite) raganwald.com
-
Trampoline のQ&A(Stack Overflow) Stack Overflow
-
Continuation-Passing Style(CPS)(Matt Might)/2alityのCPS解説 matt.might.net2ality.com
-
Ramda の compose/pipe(ポイントフリーの基礎API) ramdajs.com
学びの書籍・オンラインガイド
-
Professor Frisby’s Mostly Adequate Guide to FP(JS)(無料オンライン版) mostly-adequate.gitbook.io
-
Functional-Light JavaScript(Kyle Simpson/全文公開) GitHub
-
JavaScript Allongé(Reginald Braithwaite)— Leanpub/Amazon など LeanpubGoogle Books
-
Functional Programming in JavaScript(Luis Atencio/Manning) Manning Publications
便利な“リンク集”
-
Awesome FP JS(FPライブラリ&学習リソースの総まとめ) GitHub
必要なら、この中から用途別(検証パイプライン/非同期合成/ドメインモデリング)に絞ったおすすめセットや、各ライブラリの最小サンプルもすぐ出します。