@dovca/fp
Version:
Minimal functional programming in JavaScript
1 lines • 992 B
JavaScript
_=$=>$,y=(...$)=>$,Y=y(),x=($,{[$]:e})=>e,q=([,...$])=>$,e=($,e)=>$===e,E=e(),a=($=L,e=E)=>$+e,l=($,e=Y)=>$<e,L=l(),b=($=L,e=E)=>a($,a(~e,E)),$=($,a,...k)=>Q=>i(Q=>e(a),Q=>$,Q=>$(a,...k)),z=($=L)=>a($,L),Z=z(),d=($=E)=>a($,$),n=$=>e(z($),Z),o=($,e=$)=>l(L,a(n(n($)),n(n(e)))),i=($,e,i=_)=>x(z(o($())),y(i,e))(),w=(e,a,k=Z)=>i($(e,k),Q=>w(e,a,a(k)),$(k)),c=([k,...y],r=Z)=>i($(e,k),$(r),$(c,y,a(r))),k=(a,k,y=_)=>i($(e,x(Z,a)),y,k),t=(e,...i)=>y(...e,...k(i,$(i),$(Y))),g=(e,...i)=>a=>e(k(i,Q=>g(...i)(a),$(a))),v=(a,...k)=>i($(e,a),$(Y),Q=>y(...v(...k),a)),m=(e,i,...a)=>y(e(i),...k(a,$(m,e,...a),$(a))),p=(...$)=>g(...v(...$)),r=(e,i,...a)=>k(a,$(e,i,k(a,$(r,e,...a))),$(i)),s=(...$)=>r(a,...$,Y,Y),j=(...e)=>k(e,$(r,([$,e],i)=>_({...i,[$]:e}),...e,j),$({})),u=(e,a=d(),...k)=>y=>i($(l,a,d()),$(e,...k,y),$(u,e,b(a),...k,y)),h=(e,...a)=>i(...e,$(k,a,$(h,...a))),f=(e,...a)=>r((a,k)=>i($(e,a),$(y,a,...k),$(k)),...a,Y),module.exports={$,_,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z};