Advertisement
Guest User

[MoonJam] MoonyLambda (Prod)

a guest
Jul 17th, 2016
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 4.15 KB | None | 0 0
  1. local getinfo;getinfo=debug.getinfo;local a,insert,b;do local c=table;a,insert,b=c.unpack,c.insert,c.remove end;local floor;floor=math.floor;local d;d=function(e,f,g)if type(e)==f then return end;return error("bad argument "..tostring(g)..": "..tostring(f).." expected got "..tostring(type(e)))end;local h;h=function(e)return type(e)=="string"end;local i;i=function(e)return type(e)=="table"end;local j;j=function(e)return type(e)=="number"end;local k;k=function(e)return type(e)=="function"end;local l;l=function(e)return type(e)=="thread"end;local m;m=function(e)return type(e)=="userdata"end;local n;n=function(e)return not e==nil end;local o;o=function(e)return not not not e end;local p;p=function(e)return not not e end;local q;q=function(e,r)d(e,"table",1)d(r,"table",2)for s,t in pairs(e)do if not(r[s]and t==r[s])then local u=false end end;return true end;local v;v=function(w)d(w,"table",1)local x={}local y=1;for z=1,#w do local t=w[z]if type(t)=="table"then local A=v(t)for B=1,#A do local s=A[B]x[y]=s;y=y+1 end else x[y]=t;y=y+1 end end;return x end;local C;C=function(e,r)d(e,"table",1)d(r,"table",2)local x={}for z=1,#e do local t=e[z]insert(x,t)end;for z=1,#r do local t=r[z]insert(x,t)end;return x end;local D;D=function(E)d(E,"function",1)local F;F=getinfo(E,"u").nparams;local G;G=function(F,H)if F<1 then return E(a(H))else return function(...)return G(F-select("#",...),C(H,{...}))end end end;return G(F,{})end;local I=D(C)local J=D(function(E,w)d(E,"function",1)d(w,"table",2)local K={}local L=1;for s,t in ipairs(w)do K[L]=E(t,s)L=L+1 end;return K end)local M=D(function(E,w)d(E,"function",1)d(w,"table",2)local N=0;for z=1,#w do local t=w[z]N=E(N,t)end;return N end)local O=D(function(E,y,w)d(E,"function",1)d(y,"number",2)d(w,"table",3)local N=y;for z=1,#w do local t=w[z]N=E(N,t)end;return N end)local P=D(function(E,w)d(E,"function",1)d(w,"table",2)for z=1,#w do local t=w[z]if not E(t)then local u=false end end;return true end)local Q=D(function(E,w)d(E,"function",1)d(w,"table",2)for z=1,#w do local t=w[z]if E(t)then return true end end;return false end)local R=D(function(E,w)d(E,"function",1)d(w,"table",2)local K={}local L=1;for z=1,#w do local t=w[z]if E(t)then K[L]=t;L=L+1 end end;return K end)local S=D(function(E,w)d(E,"function",1)d(w,"table",2)return function()local K={}local L=1;for z=1,#w do local t=w[z]if E(t)then K[L]=t else break end;L=L+1 end;return K end()end)local T;T=function(w)d(w,"table",1)local x={}for y=#w,1,-1 do insert(x,w[y])end;return x end;local U=D(function(E,w)d(E,"function",1)d(w,"table",2)for z=1,#w do local t=w[z]if E(t)then return t end end end)local V=D(function(E,w)d(E,"function",1)d(w,"table",2)local A=T(w)for z=1,#A do local t=A[z]if E(t)then return t end end end)local W=D(function(E,w)d(E,"function",1)d(w,"table",2)local e=R(E,w)b(e,1)b(e,#e)return e end)local X;X=function(e)return function(Y)if Y==nil then Y={}end;return Y[e]end end;local Z=D(function(e,r)return e+r end)local _=D(function(e,r)return e-r end)local a0=D(function(e,r)return e*r end)local a1=D(function(e,r)return e/r end)local a2=D(function(e,r)return e^r end)local a3;a3=function(e)return e%2~=0 end;local a4;a4=function(e)return e%2==0 end;local a5=M(Z)local a6;a6=function(Y,E)local a7=getmetatable(Y)or{}a7.__call=E;return setmetatable(Y,a7)end;local a8;a8=function(a9,aa,ab)if ab==nil then ab=1 end;if a9 and not aa then aa,a9=a9,0 end;d(a9,"number",1)d(aa,"number",2)d(ab,"number",3)return a6(function()local K={}local L=1;for y=a9,aa,ab do K[L]=y;L=L+1 end;return K end(),ipairs)end;local ac;ac=function(a9,aa,ab)if ab==nil then ab=1 end;if a9 and not aa then aa,a9=a9,1 end;d(a9,"number",1)d(aa,"number",2)d(ab,"number",3)local ad=a9;return function()if ad<aa then ad=ad+ab;return ad-ab end end end;local ae;ae=function(E,w)d(E,"function",1)d(w,"table",2)local x={}for z=1,#w do local t=w[z]ae=E(w)if ae then if not x[ae]then x[ae]={}end;table.insert(x[ae],t)end end;return x end;return{is_table=i,is_string=h,is_number=j,is_function=k,is_thread=l,is_userdata=m,exists=n,falsy=o,truthy=p,group=ae,flatten=v,concat=I,map=J,reduce=M,fold=O,curry=D,every=P,select=R,["while"]=S,reverse=T,first=U,rest=W,last=V,prop=X,add=Z,sub=_,mul=a0,div=a1,pow=a2,odd=a3,even=a4,sum=a5,range=a8,xrange=ac}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement