Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

minimal-lisp

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

minimal-lisp - npm Package Compare versions

Comparing version
0.0.8
to
0.0.9
+1
index.js
module.exports = require('./miniMAL-node.js');
// miniMAL: https://github.com/kanaka/miniMAL
// Paste following code to the JS console
// Example: m.eval(["+", 2, 3])
m=new (function(r){function n(n,t,i){if(i){t=Object.create(t);for(var u=0;n.length>u;u++){if("&"==n[u]){t[n[u+1]]=Array.prototype.slice.call(i,u);break}t[n[u]]=i[u]}return t}return Array.isArray(n)?n.map(function(r){return e(r,t)}):"string"==typeof n?n in t?t[n]:r.throw(n+" not found"):n}function t(r,n){for(;Array.isArray(r)&&"string"==typeof r[0]&&r[0]in n&&n[r[0]].ast&&n[r[0]].ast[3];)r=n[r[0]].apply(n[r[0]],r.slice(1));return r}function e(r,i){for(;;){if(!Array.isArray(r))return n(r,i);if(r=t(r,i),!Array.isArray(r))return r;if("def"==r[0])return i[r[1]]=e(r[2],i);if("~"==r[0]){var u=e(r[1],i);return u.ast.push(1),u}if("let"==r[0]){i=Object.create(i);for(var f in r[1])f%2&&(i[r[1][f-1]]=e(r[1][f],i));r=r[2]}else{if("`"==r[0])return r[1];if(".-"==r[0]){var a=n(r.slice(1),i),c=a[0][a[1]];return 2 in a?a[0][a[1]]=a[2]:c}if("."==r[0]){var a=n(r.slice(1),i),c=a[0][a[1]];return c.apply(a[0],a.slice(2))}if("try"==r[0])try{return e(r[1],i)}catch(s){return e(r[2][2],n([r[2][1]],i,[s]))}else if("do"==r[0]){var a=n(r.slice(1,r.length-1),i);r=r[r.length-1]}else if("if"==r[0])r=e(r[1],i)?r[2]:r[3];else{if("fn"==r[0]){var u=function(){return e(r[2],n(r[1],i,arguments))};return u.ast=[r[2],i,r[1]],u}var a=n(r,i),u=a[0];if(!u.ast)return u.apply(u,a.slice(1));r=u.ast[0],i=n(u.ast[2],u.ast[1],a.slice(1))}}}}return r=Object.create(r||this),r.js=eval,r.eval=function(n){return e(n,r)},r["="]=function(r,n){return r===n},r["<"]=function(r,n){return n>r},r["+"]=function(r,n){return r+n},r["-"]=function(r,n){return r-n},r["*"]=function(r,n){return r*n},r["/"]=function(r,n){return r/n},r.isa=function(r,n){return r instanceof n},r.new=function(r){return new(r.bind.apply(r,arguments))},r.del=function(r,n){return delete r[n]},r.throw=function(r){throw r},r.rep=function(n){return JSON.stringify(e(JSON.parse(n),r))},r})()
+30
-30

@@ -17,5 +17,5 @@ ["do",

["def", "pr-list*", ["fn", ["a", "pr", "sep"],
["def", "pr-list*", ["fn", ["a", "b", "c"],
[".", ["map", ["fn", ["x"],
["if", "pr",
["if", "c",
[".", "JSON", ["`", "stringify"], "x"],

@@ -26,13 +26,13 @@ ["if", ["string?", "x"],

"a"],
["`", "join"], "sep"]]],
["`", "join"], "b"]]],
["def", "pr-str", ["fn", ["&", "a"],
["pr-list*", "a", true, ["`", " "]]]],
["pr-list*", "a", ["`", " "], true]]],
["def", "str", ["fn", ["&", "a"],
["pr-list*", "a", false, ["`", ""]]]],
["pr-list*", "a", ["`", ""], false]]],
["def", "prn", ["fn", ["&", "a"],
["do", [".", "console", ["`", "log"],
["pr-list*", "a", true, ["`", " "]]], null]]],
["pr-list*", "a", ["`", " "], true]], null]]],
["def", "println", ["fn", ["&", "a"],
["do", [".", "console", ["`", "log"],
["pr-list*", "a", false, ["`", " "]]], null]]],
["pr-list*", "a", ["`", " "], false]], null]]],

@@ -42,3 +42,5 @@ ["def", ">=", ["fn", ["a", "b"],

["def", ">", ["fn", ["a", "b"],
["if", [">=", "a", "b"], ["if", ["=", "a", "b"], false, true], false]]],
["if", [">=", "a", "b"],
["if", ["=", "a", "b"], false, true],
false]]],
["def", "<=", ["fn", ["a", "b"],

@@ -51,5 +53,8 @@ ["if", [">", "a", "b"], false, true]]],

["def", "set", ["fn", ["a", "b", "c"], [".-", "a", "b", "c"]]],
["def", "contains?", ["fn", ["a", "b"], [".", "a", ["`", "hasOwnProperty"], "b"]]],
["def", "keys", ["fn", ["a"], [".", "Object", ["`", "keys"], "a"]]],
["def", "vals", ["fn", ["a"], ["map",["fn",["k"],["get","a","k"]],["keys", "a"]]]],
["def", "contains?", ["fn", ["a", "b"],
[".", "a", ["`", "hasOwnProperty"], "b"]]],
["def", "keys", ["fn", ["a"],
[".", "Object", ["`", "keys"], "a"]]],
["def", "vals", ["fn", ["a"],
["map",["fn", ["k"], ["get", "a", "k"]], ["keys", "a"]]]],

@@ -64,20 +69,24 @@ ["def", "cons", ["fn", ["a", "b"],

["def", "first", ["fn", ["a"],
["if", [">", ["count", "a"], 0],
["if", [">", [".-", "a", ["`", "length"]], 0],
["nth", "a", 0],
null]]],
["def", "last", ["fn", ["a"], ["nth", "a", ["-", ["count", "a"], 1]]]],
["def", "last", ["fn", ["a"],
["nth", "a", ["-", [".-", "a", ["`", "length"]], 1]]]],
["def", "count", ["fn", ["a"],
[".-", "a", ["`", "length"]]]],
["def", "empty?", ["fn", ["a"],
["if", ["list?", "a"], ["if", ["=", 0, ["count", "a"]], true, false],
["=", "a", null]]]],
["def", "slice", ["fn", ["a", "start", "&", "endl"],
["let", ["end", ["if", [">", ["count", "endl"], 0],
["get", "endl", 0],
["count", "a"]]],
[".", "a", ["`", "slice"], "start", "end"]]]],
["if", ["list?", "a"],
["if", ["=", 0, [".-", "a", ["`", "length"]]], true, false],
["=", "a", null]]]],
["def", "slice", ["fn", ["a", "b", "&", "end"],
[".", "a", ["`", "slice"],
"b",
["if", [">", ["count", "end"], 0],
["get", "end", 0],
[".-", "a", ["`", "length"]]]]]],
["def", "rest", ["fn", ["a"], ["slice", "a", 1]]],
["def", "apply", ["fn", ["f", "&", "b"],
[".", "f", ["`", "apply"], "f", ["concat", ["slice", "b", 0, -1], ["last", "b"]]]]],
[".", "f", ["`", "apply"], "f",
["concat", ["slice", "b", 0, -1], ["last", "b"]]]]],

@@ -104,11 +113,2 @@ ["def", "and", ["~", ["fn", ["&", "xs"],

["def", "cond", ["~", ["fn", ["&", "clauses"],
["if", [">", ["count", "clauses"], 0],
["list", ["`", "if"], ["first", "clauses"],
["if", [">", ["count", "clauses"], 1],
["nth", "clauses", 1],
["throw", ["`", "cond requires an even number of forms"]]],
["cons", ["`", "cond"], ["rest", ["rest", "clauses"]]]],
null]]]],
["def", "classOf", ["fn", ["a"],

@@ -115,0 +115,0 @@ [".", [".-", [".-", "Object", ["`", "prototype"]], ["`", "toString"]],

@@ -1,1 +0,1 @@

for(_='),KinI,["@","_"@^^`_5 I 4val$map#[2]R"==Qt=PifG)=>F(...E:EnFnDstrIgCJSON.B"\\n"Z[1]YtYX,i)W[0]VW,f=nVU.$ueunctiofac^elsee(Object.let))n(.#(]]t.length-1nY,"tR,tV.onkeyup]\\n["textareaEtFtV,f.ast { n=t G(" t Istanceof Arraycreat.slic< rows=9 cols=60>return QtV)"DV 1)U[n[1;fn tW{for(;;){G(!(tW; defi[t[1=W; {i=i);for( e4X)e%2&&(i[X[e-1=X[e],i;P}{ `X; .-24n?nV[n[1=nR:f} .f.apply(nV,n2} do 1,)W;Pt[]} GPXW?:t[3];{ fn{ f=EfF,X,i,f; =[,i,t[1,f} U;G(! )fEn1;P V,i= R, Y,n1}}}}}var e=ft,eW{i?(e=eKt.som(n,fF"&Qn?e[t[f+1=if):(e[n]=i[f],!1,e):?te:"CQtypeof t?t4e?e[t]:null[t]:t};A=assigthisK{js:e$,e$:AK"====<<++--**//nY,#DYnV)}Kb.InerHTML=\'["^m5mIi"@+_m5MAL"def_fn^n"]@G_n^*_n^-_n",1],1#_`",[7,8,9._Math5random"</></>\',Pb.children=((FX=tV.split(Z)P>t?BCGy(BparstKA:"").joiZ()';g=/[-U-ZB-GP-R#$45^_@IK]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='),~,["|","z"|ZZ`zYinX X WvalV;t=U=nR[tQifP)=>K(...I:InKnGmapF(tE.FE=>DstrXgCJSON.B,i)5[0]45,fR4("\\n".VuefacZelse]]Object.let))[2]t.length-1[1]n,",t4.onkeyup]\\n["textareafunctionItKnE4,f.ast { n=eE P(" t Xstanceof Arraycreate(.slice(< rows=9 cols=60>return "==t4)"G4 1)[n]; nE5{for(;;){P(!(eE5; defiQ]RE5; {i=i);for( eWt)e%2&&(iQ[e-1RE[e],iUt}{ `t; .-2Wn?n4[n]R:f} .f.apply(n4,n2} do 1,)5Ut[]} PtRE5?t:t[3];{ fn{ f=If){nE,eE,i,f}; =Q,i,t],f} ;P(! )fIn1U 4,i=e( , ,n1}}}}}var e=E,e5{i?(e=e~t.some((n,fK"&"=R?eQ[f+1=if):(e[n]=i[f],!1,e):?t.F(e:"C"==typeof t?tWe?eQ]:nullQ]:t};A=assign(this~{js:eV,eV:A~"====<<++--**//n,FGDn4E}~b.XnerHTML=\'["ZmYmXi"|+zmYMAL"defzfnZn"]|PznZ*znZ-zn",1],1Fz`",[7,8,9.zMathYrandom"</></>\',t=b.children=((Kt=t4.split)Dt?BCPy(n(BparseE~A:"").joX()';g=/[^ -36-AHJL-OST[-y{}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

for(_='return Z;ZY]=X))We(V.slicVUU1WT,rR(nQ[1]PR)KnPIVIKH)=>G(...FFtGEinD D C"==B.as@,i9if8Dstanceof 7 7Array6!Q6WZ5let4{4 t=n[0]B)iQU1t[0]K,e=strDgJSON.n=[te@t[2]Objectfor(,ttypeof I,"throw else :FnG " parsVn.length-1nfunction8(".creatV)P]YmDiMAL=Q){ tQ){;n6&&D t&&t[]._M;)t[]FnTYn} eQK{;;){8(5iQK;8(tQK,5n;defZr[IXVK;~HYt._M=1}4{r=r);4 tCI)t%2&&(r[I-1]XVI]K);} {`ZI;.-2Ct?PXt:e}.e.apply(U2W}trytry{ZH}catch(t){ZV9([P]R,]W} do,)K;n[]} 8H?:n[3]; {fnEV9(IRWYt@t=[R,I]}iQ;8(!)ZeFtT;[0]R=i(,PT}}}}}4 i=(t9K{Zr?(i=i).somVQ,eG"&Bn?i[e+1]XrUe):(i[nXr[e],!1W9):t6?t.map(FnGV9W:"Bt?tCi?i]:n. (t+" not found"):t}Y@sign(n||this),{js:eval,eval:EV,n),"====<<++--**//I9sa 7Iype ,new new(.bDdFnW,del de4e [I], { }Read )Rep:E8y(V),nW})}';g=/[^ -3:-?AJL-OS[-~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='return Z;ZY]=X))We(V.slicVUU1WT,rR(nQ[1]PR)KnPIVIKHinG G F"==E.asD,iCifBGstanceof @ @Array9!Q9WZ8let7{7 t=6n[0]5E5)446iQU1t[0]K,e=strGgJSON.n=[teDt[2]nt){ZVObjectfor(,ttypeof I,")=>throw else (... : n"5parsVn.length-1B("function.creatV)P]YmGiMAL=Q){ tQ){;n9&&5G t&&t[5]._M;)t[5] nTYn} eQK{;;){B(8iQK;B(tQK,8n;def4Zr[IXVK;~HYt._M=1}74{r=r);7 tFI)t%2&&(r[I-1]XVI]K);} {`4ZI;.-2Ft?PXt:e}.e.apply(U2W}try4try{ZH}catch(C([P]R,]W} do,)K;n[]} B4H?:n[3]; {fn C(IRW}YtDt=[R,I]}6iQ;B(!)Ze tT;[0]R=i(,PT}}}}}7 i=(tCK{Zr?(i=i).somVQ,e"&En?i[e+1]XrUe):(i[nXr[e],!1WC):t9?t.map( nV5CW:"Et?tFi?i]:n. (t+" not found"):t}YDsign(n||this),{js:eval,eval: tV,n),"====<<++--**//ICsa5@Iype5,newnew(5.bGd nW,delde7e 5[I], { 5}Read5)Rep: tBy(V),nW})}';g=/[^ -3:-?AJL-OS[-~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

for(_='re||turn z;zZ]=Y,iXinW))V.slice(UU1VT W RvalQ"==P[0]LifKt(I,rHH)G[1]EnED(nCWstanceof B BArray@!C@Vz9let7{7 e=6nL5P5)446$$iCU1#),eLHt=strWgslurpJSON.n=[e)=>[2]for(,etypeof Object.D,"throwelse(...:n " 5 n.length-1 et.astnfunctionparse(K("c|ate(#)E]Zmodule.exports=C){ eC){;n@&&5W e&&e[5]._M;)e[5]nTZn} tCG{;;){K(9iCG;K(eCH9n;def4zr[DYIG;~$tCEGZe._M=1}74{r=r);7 eRD)e%2&&(r[D-1]YtCE]G);}{`4zD;.-2Re?EYe:t}.t.apply(U2V}try4try{ztCEG}catch(e){zIX([E]H,]V} do#, r);n[ ]} K4tCEG?:n[3];{fn$IXCEHVZe.ast=[H,D]}6iC;K(!)zteT;LH=i(,ET}}}}}7 i=(eXG{zr?(i=i).some(C,t"&Pn?i[t+1]YrUt):(i[nYr[t],!1)i):e@?e.map(nI5XV:"Pe?eRi?i]:n.(e+" not found"):e}Zassign(n{js:eQQ:I,n"= ===< <+ +- -* */ /DXsa 5BD,type 5,new new(5.bWdn)del de7e 5[D], { 5}Head 5 |qui|("fs").|adFileSync(5,"utf-8"load:n.eQ(n.(V|p:Ky(InV})}';g=/[^ -"%-38:-?AFJM-OS[-y{}~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_=']=|,izinZt(Y))X.slice(WW1XV Z UvalT"==R[0]QifPreL,rKK)I[1]HnHG(nEZstanceof D DArrayCLturn B!ECXB@let9{9 e=7nQ6R6)55744iEW1$),#eQK#t=strZgslurpJSON.n=[e)=>[2]ne){BYfor(,etypeof Object.G,"throwelse(... : n " 6 : en.length-1t.astparse(P("functioncLate($)H];Bmodule.exports=E){ eE){;nC&&6Z e&&e[6]._M;)e[6] nV;Bn} tEI{;;){P(@iEI;P(eEK#@n;def5Br[G|YI;~4tEHI;Be._M=1}95{r=r);9 eUG)e%2&&(r[G-1]|tEH]I);}{`5BG;.-2Ue?H|e:t}.t.apply(W2X}try5try{BtEHI}catch(z([H]K,]X} do$,#r);n[]} P5tEHI?:n[3];{fn4 zEHKX};Be.ast=[K,G]}7iE;P(!)Bt eV;QK=i(,HV}}}}}9 i=(ezI{Br?(i=i).some(E,t"&Rn?i[t+1]|rWt):(i[n|r[t],!1)#i):eC?e.map( nY6zX:"Re?eUi?i]:n.(e+" not found"):e};Bassign(n#{js:eTTY,n#"= ===< <+ +- -* */ /Gzsa 6DG,type 6,new new(6.bZd n)#del de9e 6[G], { 6}Kead 6# LquiL("fs").LadFileSync(6,"utf-8"#loadn.eT(n.(X#LpPy(Y#nX})}';g=/[^ -"%-38:-?AFJM-OS[-y{}~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
{
"name": "minimal-lisp",
"version": "0.0.8",
"version": "0.0.9",
"description": "miniMAL: a Clojure-inspired Lisp in < 1024 bytes of JavaScript",

@@ -17,2 +17,3 @@ "keywords": ["Clojure", "clojure", "Lisp", "lisp", "mal", "make-a-lisp", "1K", "1024", "golf", "JS1K", "js1k", "JSON", "json", "tail-call", "TCO", "macros", "interop", "lexical", "functional"],

"miniMAL-node.js",
"index.js",
"miniMAL-min.js",

@@ -19,0 +20,0 @@ "miniMAL-js1k.js",

// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -4,0 +4,0 @@

// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -4,0 +4,0 @@

// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -4,0 +4,0 @@

@@ -1,1 +0,1 @@

for(_='(iDnDC),Bre[t]"==if()=>(...[0]:nn"JSON..map(i)stringt in ilet ))Object.unction [1] n ," ;".slice(C[2],e)turn instanceof Arraycate(f C{!D tDdef e[i ]=let{e=e);for( )t%2&&(e[i [t-1]]=C ); }"do tD1)[i.length-2]if C ?:C[3]fnr,tD ,e,r;{n=tD,r=n; r.apply(r,n1}}t=f (t,i{ e?D=iBt.some((n,r"&n?i[t[r+1]]=er):D[n]=e[r],!1,i):t?ttn(t,i:"typeof t??i:null:t};A=assign(globalB{"==== << ++ -- ** //n ,list,map t=>n(t}Bqui("pl").start({eval:tt[3](!1,ify(n(parse(tBABwriter,terminal:!1})';g=/[-B-D]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='(iCnCB),re[t]"==if()=>(...[0]:nn"JSON..map(stringt in ilet ))Object.[1] n ," ;" .slice(functionB[2],e) instanceof Arrayi)cate(turn  B{!CtC defe[i ]= let{e=e);for( )t%2&&(e[i [t-1]]=B );}"dotC1)[i.length-2] ifB ?:B[3] fnr){,tC ,e,r};{n=tC,r=n;r.apply(r,n1}}t=(t,i{e?C=it.some((n,r"&n?i[t[r+1]]=er):C[n]=e[r],!1,i):t?ttn(t,i:"typeof t??i:null:t};A=assign(global{"==== << ++ -- ** //n ,list,map t=>n(t}qui("pl").start({eval:tt[3](!1,ify(n(parse(tAwriter,terminal:!1})';g=/[-BC]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(i,e){if(!(i instanceof Array))return t(i,e);if("def"==i[0])return e[i[1]]=n(i[2],e);if("let"==i[0]){e=Object.create(e);for(let t in i[1])t%2&&(e[i[1][t-1]]=n(i[1][t],e));return n(i[2],e)}if("do"==i[0])return t(i.slice(1),e)[i.length-2];if("if"==i[0])return n(i[1],e)?n(i[2],e):n(i[3],e);if("fn"==i[0])return(...r)=>n(i[2],t(i[1],e,r));{let n=t(i,e),r=n[0];return r.apply(r,n.slice(1))}}let t=function(t,i,e){return e?(i=Object.create(i),t.some((n,r)=>"&"==n?i[t[r+1]]=e.slice(r):(i[n]=e[r],!1)),i):t instanceof Array?t.map((...t)=>n(t[0],i)):"string"==typeof t?t in i?i[t]:null[t]:t};E=Object.assign(Object.create(global),{"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],list:(...n)=>n,map:(...n)=>n[1].map(t=>n[0](t))}),require("repl").start({eval:(...t)=>t[3](!1,JSON.stringify(n(JSON.parse(t[0]),E))),writer:(...n)=>n[0],terminal:!1})
function n(i,e){if(!(i instanceof Array))return t(i,e);if("def"==i[0])return e[i[1]]=n(i[2],e);if("let"==i[0]){e=Object.create(e);for(let t in i[1])t%2&&(e[i[1][t-1]]=n(i[1][t],e));return n(i[2],e)}if("do"==i[0])return t(i.slice(1),e)[i.length-2];if("if"==i[0])return n(i[1],e)?n(i[2],e):n(i[3],e);if("fn"==i[0])return function(...r){return n(i[2],t(i[1],e,r))};{let n=t(i,e),r=n[0];return r.apply(r,n.slice(1))}}let t=function(t,i,e){return e?(i=Object.create(i),t.some((n,r)=>"&"==n?i[t[r+1]]=e.slice(r):(i[n]=e[r],!1)),i):t instanceof Array?t.map((...t)=>n(t[0],i)):"string"==typeof t?t in i?i[t]:null[t]:t};E=Object.assign(Object.create(global),{"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],list:(...n)=>n,map:(...n)=>n[1].map(t=>n[0](t))}),require("repl").start({eval:(...t)=>t[3](!1,JSON.stringify(n(JSON.parse(t[0]),E))),writer:(...n)=>n[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -49,3 +49,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
return (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
return function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
} else { // invoke list form

@@ -52,0 +54,0 @@ let el = eval_ast_or_bind(ast, env),

@@ -1,1 +0,1 @@

for(_='st4(eZ=nZY[t]X"==W)=>V(...U[0]T:UnVnT"),reJSON..map(;e=e[let {n=tZ4ringt in e))Object.unction[2]if(e.length-1[1] n ," parse( ]}else ",i)f.a4 in4anceof Array.slice(turn WeT)cate(f nZ{for(;;){!ZtZ;"defi[e ]Y;"let{i=i);for( )t%2&&(i[e [t-1]]Y X)2do1,)ifeY ?e:e[3];else{"fn{f=UfVnZ,tZ ,i,f;=[e,i,e ],f},f=nT;!)fUn1;e=T,i=t(, ,n1}}}}t=f(t,e{i?Z=et.some((n,fV"&Wn?e[t[f+1]]=if):Z[n]=i[f],!1,e):t?tUtVn(tT,e:"Wtypeof t??eX:nullX:t};A=assign(global{"==== << ++ -- ** //n ,li4n,mapn t=>nT(t,ad nTARGS:process.argv3)}qui("pl").4art({eval:UtVt[3](!1,ify(n( tTAwriter,terminal:!1})';g=/[-T-Z4]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='st4(eZ=nZY[t]X"==W)=>V(...U[0]T:UnVnT"),reJSON..map(;e=e[let {n=tZ4ringt in e))Object.[2]if(e.length-1[1]n," parse( ]}else " ,i)functionr.a4 in4anceof Array.slice(WeT)cate(turn  nZ{for(;;){!ZtZ;"defi[e]Y;"let{i=i);for()t%2&&(i[e[t-1]]YX)2 do1,) ifeY?e:e[3];else{"fn{r=Ur){nZ,tZ,i,r};=[e,i,e],r},r=nT;!)rUn1;e=T,i=t(,,n1}}}}t=(t,e{i?Z=et.some((n,rV"&Wn?e[t[r+1]]=ir):Z[n]=i[r],!1,e):t?tUtVn(tT,e:"Wtypeof t??eX:nullX:t};A=assign(global{"==== << ++ -- ** //n,li4n,mapnt=>nT(t,ad nTARGS:process.argv3)}qui("pl").4art({eval:UtVt[3](!1,ify(n( tTAwriter,terminal:!1})';g=/[-T-Z4]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(e,i){for(;;){if(!(e instanceof Array))return t(e,i);if("def"==e[0])return i[e[1]]=n(e[2],i);if("let"==e[0]){i=Object.create(i);for(let t in e[1])t%2&&(i[e[1][t-1]]=n(e[1][t],i));e=e[2]}else if("do"==e[0]){let n=t(e.slice(1,e.length-1),i);e=e[e.length-1]}else if("if"==e[0])e=n(e[1],i)?e[2]:e[3];else{if("fn"==e[0]){let f=(...f)=>n(e[2],t(e[1],i,f));return f.ast=[e[2],i,e[1]],f}{let n=t(e,i),f=n[0];if(!f.ast)return f(...n.slice(1));e=f.ast[0],i=t(f.ast[2],f.ast[1],n.slice(1))}}}}let t=function(t,e,i){return i?(e=Object.create(e),t.some((n,f)=>"&"==n?e[t[f+1]]=i.slice(f):(e[n]=i[f],!1)),e):t instanceof Array?t.map((...t)=>n(t[0],e)):"string"==typeof t?t in e?e[t]:null[t]:t};E=Object.assign(Object.create(global),{"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],list:(...n)=>n,map:(...n)=>n[1].map(t=>n[0](t)),read:(...n)=>JSON.parse(n[0]),ARGS:process.argv.slice(3)}),require("repl").start({eval:(...t)=>t[3](!1,JSON.stringify(n(JSON.parse(t[0]),E))),writer:(...n)=>n[0],terminal:!1})
function n(e,i){for(;;){if(!(e instanceof Array))return t(e,i);if("def"==e[0])return i[e[1]]=n(e[2],i);if("let"==e[0]){i=Object.create(i);for(let t in e[1])t%2&&(i[e[1][t-1]]=n(e[1][t],i));e=e[2]}else if("do"==e[0]){let n=t(e.slice(1,e.length-1),i);e=e[e.length-1]}else if("if"==e[0])e=n(e[1],i)?e[2]:e[3];else{if("fn"==e[0]){let r=function(...r){return n(e[2],t(e[1],i,r))};return r.ast=[e[2],i,e[1]],r}{let n=t(e,i),r=n[0];if(!r.ast)return r(...n.slice(1));e=r.ast[0],i=t(r.ast[2],r.ast[1],n.slice(1))}}}}let t=function(t,e,i){return i?(e=Object.create(e),t.some((n,r)=>"&"==n?e[t[r+1]]=i.slice(r):(e[n]=i[r],!1)),e):t instanceof Array?t.map((...t)=>n(t[0],e)):"string"==typeof t?t in e?e[t]:null[t]:t};E=Object.assign(Object.create(global),{"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],list:(...n)=>n,map:(...n)=>n[1].map(t=>n[0](t)),read:(...n)=>JSON.parse(n[0]),ARGS:process.argv.slice(3)}),require("repl").start({eval:(...t)=>t[3](!1,JSON.stringify(n(JSON.parse(t[0]),E))),writer:(...n)=>n[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -47,3 +47,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -50,0 +52,0 @@ return f

@@ -1,1 +0,1 @@

for(_='[0]~n~Z(tY=nYX;t=W[e]V"==Uif(T)=>I(...H:HnIEEZD"DCreBslurpJSON.))e(let {n=tstringe in tevalelseObject.unction),Bquir"t.length-1[1]n,"[2],i) T" r.ast HeIn(e~, instanceof Arraypars.slicprocess.argvcBatBturn Ut~)f nY {for(;;){T!Yt ; defi[t]X ; let{i=i);for()e%2&&(i[t[e-1]]XV )Wt}{ `t; do1,) Wt[]} iftX ?t:t[3];{ fn{r=HrInY,t,i,r; =[t,i,t],r} ,r=Z;T! )rHn1W ~,i= , ,n1}}}}}e=f(e,t {i?Y=te.som(n,rI"&Un?t[e[r+1]]=ir):Y[n]=i[r],!1)t):e?e.map(t:"Utypeof e??tV:nullV:e};A=assign(global{:A"=C===<C<+C+-C-*C*/C/n,BadEZEfs").BadFileSync(Z,"utf-8"loadEA.(A.(ZARGS:3)}?A.load():Bpl").start({:HeIe[3](!1,ify(n(e~AwriterD,terminal:!1})';g=/[^ -AFGJ-S[-}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='[0]~n~Z(tY=nYX;t=W[e]V"==Uif(T)=>I(...H:HnIEEZD"DCreBslurpJSON.))e(let {n=tstringe in tevalelseObject.),Bquir"t.length-1[1]n,"[2],r)T" function i.ast HeIn(e~, instanceof Arraypars.slicprocess.argvcBatUt~)Bturn  nY{for(;;){T!Yt; defr[t]X; let{r=r);for()e%2&&(r[t[e-1]]XV)Wt}{ `t; do1,)Wt[]} iftX?t:t[3];{ fn{i= Hi){nY,t,r,i}; =[t,r,t],i},i=Z;T! )iHn1W ~,r= , ,n1}}}}}e= (e,t{r?Y=te.som(n,iI"&Un?t[e[i+1]]=ri):Y[n]=r[i],!1)t):e?e.map(t:"Utypeof e??tV:nullV:e};A=assign(global{:A"=C===<C<+C+-C-*C*/C/n,BadEZEfs").BadFileSync(Z,"utf-8"loadEA.(A.(ZARGS:3)}?A.load():Bpl").start({:HeIe[3](!1,ify(n(e~AwriterD,terminal:!1})';g=/[^ -AFGJ-S[-}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(t,i){for(;;){if(!(t instanceof Array))return e(t,i);if("def"==t[0])return i[t[1]]=n(t[2],i);if("let"==t[0]){i=Object.create(i);for(let e in t[1])e%2&&(i[t[1][e-1]]=n(t[1][e],i));t=t[2]}else{if("`"==t[0])return t[1];if("do"==t[0]){let n=e(t.slice(1,t.length-1),i);t=t[t.length-1]}else if("if"==t[0])t=n(t[1],i)?t[2]:t[3];else{if("fn"==t[0]){let r=(...r)=>n(t[2],e(t[1],i,r));return r.ast=[t[2],i,t[1]],r}{let n=e(t,i),r=n[0];if(!r.ast)return r(...n.slice(1));t=r.ast[0],i=e(r.ast[2],r.ast[1],n.slice(1))}}}}}let e=function(e,t,i){return i?(t=Object.create(t),e.some((n,r)=>"&"==n?t[e[r+1]]=i.slice(r):(t[n]=i[r],!1)),t):e instanceof Array?e.map((...e)=>n(e[0],t)):"string"==typeof e?e in t?t[e]:null[e]:e};E=Object.assign(Object.create(global),{eval:(...e)=>n(e[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...e)=>e[3](!1,JSON.stringify(n(JSON.parse(e[0]),E))),writer:(...n)=>n[0],terminal:!1})
function n(t,r){for(;;){if(!(t instanceof Array))return e(t,r);if("def"==t[0])return r[t[1]]=n(t[2],r);if("let"==t[0]){r=Object.create(r);for(let e in t[1])e%2&&(r[t[1][e-1]]=n(t[1][e],r));t=t[2]}else{if("`"==t[0])return t[1];if("do"==t[0]){let n=e(t.slice(1,t.length-1),r);t=t[t.length-1]}else if("if"==t[0])t=n(t[1],r)?t[2]:t[3];else{if("fn"==t[0]){let i=function(...i){return n(t[2],e(t[1],r,i))};return i.ast=[t[2],r,t[1]],i}{let n=e(t,r),i=n[0];if(!i.ast)return i(...n.slice(1));t=i.ast[0],r=e(i.ast[2],i.ast[1],n.slice(1))}}}}}let e=function(e,t,r){return r?(t=Object.create(t),e.some((n,i)=>"&"==n?t[e[i+1]]=r.slice(i):(t[n]=r[i],!1)),t):e instanceof Array?e.map((...e)=>n(e[0],t)):"string"==typeof e?e in t?t[e]:null[e]:e};E=Object.assign(Object.create(global),{eval:(...e)=>n(e[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...e)=>e[3](!1,JSON.stringify(n(JSON.parse(e[0]),E))),writer:(...n)=>n[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -49,3 +49,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -52,0 +54,0 @@ return f

@@ -1,1 +0,1 @@

for(_=']=Z[1]YiYX;i=W"==Vif(U,tT[0]QeQP)=>M(...L:LeMKKPI"IHreE),DT)CC,r=PBslurpJSON.[n]:nstringevalelse in e(Object.unctionEquir"let [2](i))i.length-1eY,":LnMr.ast {e=n U" instanceof Arrayparsprocess.argvcEat.slicEturn ViQ) 1)B[eY];f eC{for(;;){U!nC; deft[XZeC; let{t=t);for(nX)n%2&&(t[X[n-1]ZeY[n]TWi}{ `X; .-2e?P[eYZe:r} .r.apply(P,e2} do 1,)CWi[]} ifi=eYC?i:i[3];{ fn{r=LrMe,nYT,r; =[iT,X],r} B;U! )rLe1W QT=n( , Y,e1}}}}}n=f(n,iC{t?=iDn.som(e,rM"&Ve?i[n[r+1]Ztr):[eZt[r],!1,i):n?n.map(LnMnQ,i:"Vtypeof n?ni?iull};A=assign(globalD{js:,nQ,AD"=H===<H<+H+-H-*H*/H/eY,EadKPDKfs").EadFileSync(P,"utf-8"DloadKA.(A.(PDARGS:3)}D?A.load():Epl").start({n[3](!1,ify(nQDADwriterITerminal:!1})';g=/[^ -AFGJNORS[-}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_=']=~[1]ZtZY;t=X"==Wif(V[0]UeUT)=>M(...L:LeMKKTI"IHreE),D,i)CC,r=TBslurpJSON.[n]:nstringevalelse in e(Object.Equir"let [2](t))t.length-1eZ,"function:LnMr.ast {e=n V" instanceof Arrayparsprocess.argvcEat.slicEturn WtU) 1)B[eZ]; eC{for(;;){V!nC; defi[Y~eC; let{i=i);for(nY)n%2&&(i[Y[n-1]~eZ[n],iXt}{ `Y; .-2e?T[eZ~e:r} .r.apply(T,e2} do 1,)CXt[]} ift=eZC?t:t[3];{ fn{r=Lr){e,nZ,i,r}; =[t,i,Y],r} B;V! )rLe1X U,i=n( , Z,e1}}}}}n=(n,tC{i?=tDn.som(e,rM"&We?t[n[r+1]~ir):[e~i[r],!1,t):n?n.map(LnMnU,t:"Wtypeof n?nt?tull};A=assign(globalD{js:,nU,AD"=H===<H<+H+-H-*H*/H/eZ,EadKTDKfs").EadFileSync(T,"utf-8"DloadKA.(A.(TDARGS:3)}D?A.load():Epl").start({n[3](!1,ify(nUDADwriterI,terminal:!1})';g=/[^ -AFGJN-S[-}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function e(i,t){for(;;){if(!(i instanceof Array))return n(i,t);if("def"==i[0])return t[i[1]]=e(i[2],t);if("let"==i[0]){t=Object.create(t);for(let n in i[1])n%2&&(t[i[1][n-1]]=e(i[1][n],t));i=i[2]}else{if("`"==i[0])return i[1];if(".-"==i[0]){let e=n(i.slice(1),t),r=e[0][e[1]];return 2 in e?e[0][e[1]]=e[2]:r}if("."==i[0]){let e=n(i.slice(1),t),r=e[0][e[1]];return r.apply(e[0],e.slice(2))}if("do"==i[0]){let e=n(i.slice(1,i.length-1),t);i=i[i.length-1]}else if("if"==i[0])i=e(i[1],t)?i[2]:i[3];else{if("fn"==i[0]){let r=(...r)=>e(i[2],n(i[1],t,r));return r.ast=[i[2],t,i[1]],r}{let e=n(i,t),r=e[0];if(!r.ast)return r(...e.slice(1));i=r.ast[0],t=n(r.ast[2],r.ast[1],e.slice(1))}}}}}let n=function(n,i,t){return t?(i=Object.create(i),n.some((e,r)=>"&"==e?i[n[r+1]]=t.slice(r):(i[e]=t[r],!1)),i):n instanceof Array?n.map((...n)=>e(n[0],i)):"string"==typeof n?n in i?i[n]:null[n]:n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...e)=>e[0]===e[1],"<":(...e)=>e[0]<e[1],"+":(...e)=>e[0]+e[1],"-":(...e)=>e[0]-e[1],"*":(...e)=>e[0]*e[1],"/":(...e)=>e[0]/e[1],read:(...e)=>JSON.parse(e[0]),slurp:(...e)=>require("fs").readFileSync(e[0],"utf-8"),load:(...e)=>E.eval(JSON.parse(E.slurp(e[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...e)=>e[0],terminal:!1})
function e(t,i){for(;;){if(!(t instanceof Array))return n(t,i);if("def"==t[0])return i[t[1]]=e(t[2],i);if("let"==t[0]){i=Object.create(i);for(let n in t[1])n%2&&(i[t[1][n-1]]=e(t[1][n],i));t=t[2]}else{if("`"==t[0])return t[1];if(".-"==t[0]){let e=n(t.slice(1),i),r=e[0][e[1]];return 2 in e?e[0][e[1]]=e[2]:r}if("."==t[0]){let e=n(t.slice(1),i),r=e[0][e[1]];return r.apply(e[0],e.slice(2))}if("do"==t[0]){let e=n(t.slice(1,t.length-1),i);t=t[t.length-1]}else if("if"==t[0])t=e(t[1],i)?t[2]:t[3];else{if("fn"==t[0]){let r=function(...r){return e(t[2],n(t[1],i,r))};return r.ast=[t[2],i,t[1]],r}{let e=n(t,i),r=e[0];if(!r.ast)return r(...e.slice(1));t=r.ast[0],i=n(r.ast[2],r.ast[1],e.slice(1))}}}}}let n=function(n,t,i){return i?(t=Object.create(t),n.some((e,r)=>"&"==e?t[n[r+1]]=i.slice(r):(t[e]=i[r],!1)),t):n instanceof Array?n.map((...n)=>e(n[0],t)):"string"==typeof n?n in t?t[n]:null[n]:n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...e)=>e[0]===e[1],"<":(...e)=>e[0]<e[1],"+":(...e)=>e[0]+e[1],"-":(...e)=>e[0]-e[1],"*":(...e)=>e[0]*e[1],"/":(...e)=>e[0]/e[1],read:(...e)=>JSON.parse(e[0]),slurp:(...e)=>require("fs").readFileSync(e[0],"utf-8"),load:(...e)=>E.eval(JSON.parse(E.slurp(e[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...e)=>e[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -57,3 +57,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -60,0 +62,0 @@ return f

@@ -1,1 +0,1 @@

for(_='[2]$i$#,nI]=Hi=LstKinQ Q P"==Er(iD,tClet B[0]7e(6{Bn=5.slic64Ei7)ZZ5D41Y),XC)Wn7VW,e=VUKrQgTslurpJSON.re(...n)=>:if()) QKanceof Arrayturn !(ielsefor([n[1]iObject.qui("eval...n41; i.length-1 n," e.aK"Vfunctionpars6"process.argvcat6Y)U]; n(n,e){;n&&VQ e&&e7]._M;)n=e7]( n} 6iW{;;){DW;Ln(iW,i;defZt[H6#W;~Z56W;n._M=1I}letZ{t=t);BnP)n%2&&(t[-1]H6]C;L#}{`Z;.-2Pn?VHn$:e}.e.apply(VI42}doY, )W;Li[ ]} ifZL6W?#:i[3];{fnZ56#,r(CI;n.aK=[#C,]I}5DU;!)6 L7C=r($,I41}}}}}Br=(n,r,i){i?(r=rXn.som6(eW=>"&Ee?r[t+1]Hi4t):(r[eHi[t],!1,r):n?n.map(6V,r:"TEtypeof n?nPr?r]:null]:n};A=assign(globalX{js:,6V,AX"==== << ++ -- ** //n,adVXfs").adFileSync(V,"utf-8"XloadA.(A.(VXARGS:43)}X$?A.load($):pl").Kart({n[3](!1,Tify(6VXAXwriterVCermQal:!1})';g=/[-T-Z4-7B-EPQKLHI#$]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='[2]$i$#,nI]=Hi=L,tKstQinP P E"==Dr(iClet B[0]7e(6{Bn=5.slic64Di7)ZZ5C41Y))X(...nWW41X;V),UK)Tn7T,e=QrPgslurpJSON.reif( PQanceof Arrayturn !(iXelsefor([n[1]iObject.qui("eval:W)=> "  i.length-1 n,"e.aQfunctionpars6"process.argvcat6Y)]; n(n,e){;n&&P e&&e7]._M;)n=e7]Vn} 6iT{;;){CT;Ln(iT,i;defZt[H6#T;~Z56T;n._M=1I}letZ{t=t);BnE)n%2&&(t[-1]H6]T);L#}{`Z;.-2En?Hn$:e}.e.apply(I42X}doY, )T;Li[ ]} ifZL6T?#:i[3];{fnZ5W){6#,r(KIX};n.aQ=[#K,]I}5C;!)eVL7K=r($,I41X}}}}}Br=(n,r,i){i?(r=rUn.som6(eT=>"&De?r[t+1]Hi4t):(r[eHi[t],!1)Ur):n?n.map(W)=>6,rX:"Dtypeof n?nEr?r]:null]:n};A=assign(globalU{js:, 6,AU"= ===< <+ +- -* */ /n,ad U fs").adFileSync(,"utf-8"Uload A.(A.(XUARGS:43)}U$?A.load($):pl").Qart({ n[3](!1,ify(6UAXUwriter KermPal:!1})';g=/[-T-Z4-7B-EPQKLHI#$]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function e(i,t){for(;;){if(!(i instanceof Array))return r(i,t);if(i=n(i,t),!(i instanceof Array))return i;if("def"==i[0])return t[i[1]]=e(i[2],t);if("~"==i[0]){let n=e(i[1],t);return n._M=1,n}if("let"==i[0]){t=Object.create(t);for(let n in i[1])n%2&&(t[i[1][n-1]]=e(i[1][n],t));i=i[2]}else{if("`"==i[0])return i[1];if(".-"==i[0]){let n=r(i.slice(1),t),e=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:e}if("."==i[0]){let n=r(i.slice(1),t),e=n[0][n[1]];return e.apply(n[0],n.slice(2))}if("do"==i[0]){let n=r(i.slice(1,i.length-1),t);i=i[i.length-1]}else if("if"==i[0])i=e(i[1],t)?i[2]:i[3];else{if("fn"==i[0]){let n=(...n)=>e(i[2],r(i[1],t,n));return n.ast=[i[2],t,i[1]],n}{let n=r(i,t),e=n[0];if(!e.ast)return e(...n.slice(1));i=e.ast[0],t=r(e.ast[2],e.ast[1],n.slice(1))}}}}}let r=function(n,r,i){return i?(r=Object.create(r),n.some((e,t)=>"&"==e?r[n[t+1]]=i.slice(t):(r[e]=i[t],!1)),r):n instanceof Array?n.map((...n)=>e(n[0],r)):"string"==typeof n?n in r?r[n]:null[n]:n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...n)=>n[0],terminal:!1})
function n(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function e(i,t){for(;;){if(!(i instanceof Array))return r(i,t);if(i=n(i,t),!(i instanceof Array))return i;if("def"==i[0])return t[i[1]]=e(i[2],t);if("~"==i[0]){let n=e(i[1],t);return n._M=1,n}if("let"==i[0]){t=Object.create(t);for(let n in i[1])n%2&&(t[i[1][n-1]]=e(i[1][n],t));i=i[2]}else{if("`"==i[0])return i[1];if(".-"==i[0]){let n=r(i.slice(1),t),e=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:e}if("."==i[0]){let n=r(i.slice(1),t),e=n[0][n[1]];return e.apply(n[0],n.slice(2))}if("do"==i[0]){let n=r(i.slice(1,i.length-1),t);i=i[i.length-1]}else if("if"==i[0])i=e(i[1],t)?i[2]:i[3];else{if("fn"==i[0]){let n=function(...n){return e(i[2],r(i[1],t,n))};return n.ast=[i[2],t,i[1]],n}{let n=r(i,t),e=n[0];if(!e.ast)return e(...n.slice(1));i=e.ast[0],t=r(e.ast[2],e.ast[1],n.slice(1))}}}}}let r=function(n,r,i){return i?(r=Object.create(r),n.some((e,t)=>"&"==e?r[n[t+1]]=i.slice(t):(r[e]=i[t],!1)),r):n instanceof Array?n.map((...n)=>e(n[0],r)):"string"==typeof n?n in r?r[n]:null[n]:n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...n)=>n[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -73,3 +73,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -76,0 +78,0 @@ return f

@@ -1,1 +0,1 @@

for(_='[0]@n@$$,#]=IinH[1]LtLK,i)Qe(PPKQE H D,i,C"==Bt=7),6,i6e=$5strHg4r(Z{foZ;YslurpXJSON.WreV[2]UtUTif()) Hstanceof ArrayVturn !(tlet {n=.slicPBt@)Zt1(...n)=>:[nObject.throwVquiV("evalelse...n1; t.length-1 nL," e.ast"$functionWparsPprocess.argv"cVatP)5L]; n(n,e)Yn&&$H e&&e@]._M;)n=e@]( n} PtQY;){ZtQ;7n(t,i6t;defi[KIPTQ;~E;n._M=1,n}let{i=i);foZnDK)n%2&&(i[K-1]IPK],i;7T}{`K;.-2Dn?$LInU:e}.e.apply(#n2}trytry{E}catch(n){PTU,Z[TL]C]} do, 6i);7t[ ]} if7E?T:t[3];{fnPT,ZKCn;n.as7[TCK],n}Zt5;!)P 7@,i=ZU,L,n1}}}}}r=(n,r,t){t?(r=r6n.somP(eQ=>"&Be?r[i+1]Iti):(r[eIt[i],!1,r):n?n.map(P#r:"4Btypeof n?nDr?r]:A.(n+" not found"):n};A=assign(global6{js:,P#A6"==== << ++ -- ** //nL,{ $},Vad$6Xfs").VadFileSync(#"utf-8"6loadA.(A.X($6ARGS:3)}6U?A.load(U):Vpl").start({n[3](!1,W4ify(P$6A6writer#termHal:!1})';g=/[-T-Z4-7B-EPQKLHI#$@]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='[0]9n9@@,$]=#inI[1]HtHL,i)Ke(QQLKP I E,i,D"==C[2]BtB7t=6))5(...n4.slicQZ4Z15;Y),X,iXe=@WstrIgVr(U{foU;TslurpJSON.reif( Istanceof Arrayturn !(t5let {n=Ct9)UtZ1){Q7[nObject.throwqui("evalelse:4)=> " @ t.length-1 nH,"e.astfunctionparsQprocess.argv"catQ)WH]; n(n,e)Tn&&@I e&&e9]._M;)n=e9]Yn} QtKT;){UtK;6n(t,iXt;defi[L#Q7K;~P;n._M=1,n}let{i=i);foUnEL)n%2&&(i[L-1]#QL],i5;67}{`L;.-2En?@H#nB:e}.e.apply($nZ25}trytry{P}catch(nB,U[7H]D]5} do, Xi);6t[ ]} if6P?7:t[3];{fn4,ULDn5};n.as6[7DL],n}UtW;!)eY69,i=UB,H,nZ15}}}}}r=(n,r,t){t?(r=rXn.somQ(eK=>"&Ce?r[i+1]#tZi):(r[e#t[i],!1)Xr):n?n.map(4)=>Q$r5:"VCtypeof n?nEr?r]:A.(n+" not found"):n};A=assign(globalX{js:, Q$AX"= ===< <+ +- -* */ /nH, { @},ad @X fs").adFileSync($"utf-8"Xload A.(A.(@5XARGS:Z3)}XB?A.load(B):pl").start({ n[3](!1,Vify(Q@XA5Xwriter $termIal:!1})';g=/[-T-Z4-7B-EPQKLHI#$@9]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function e(t,i){for(;;){if(!(t instanceof Array))return r(t,i);if(t=n(t,i),!(t instanceof Array))return t;if("def"==t[0])return i[t[1]]=e(t[2],i);if("~"==t[0]){let n=e(t[1],i);return n._M=1,n}if("let"==t[0]){i=Object.create(i);for(let n in t[1])n%2&&(i[t[1][n-1]]=e(t[1][n],i));t=t[2]}else{if("`"==t[0])return t[1];if(".-"==t[0]){let n=r(t.slice(1),i),e=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:e}if("."==t[0]){let n=r(t.slice(1),i),e=n[0][n[1]];return e.apply(n[0],n.slice(2))}if("try"==t[0])try{return e(t[1],i)}catch(n){return e(t[2][2],r([t[2][1]],i,[n]))}else if("do"==t[0]){let n=r(t.slice(1,t.length-1),i);t=t[t.length-1]}else if("if"==t[0])t=e(t[1],i)?t[2]:t[3];else{if("fn"==t[0]){let n=(...n)=>e(t[2],r(t[1],i,n));return n.ast=[t[2],i,t[1]],n}{let n=r(t,i),e=n[0];if(!e.ast)return e(...n.slice(1));t=e.ast[0],i=r(e.ast[2],e.ast[1],n.slice(1))}}}}}let r=function(n,r,t){return t?(r=Object.create(r),n.some((e,i)=>"&"==e?r[n[i+1]]=t.slice(i):(r[e]=t[i],!1)),r):n instanceof Array?n.map((...n)=>e(n[0],r)):"string"==typeof n?n in r?r[n]:E.throw(n+" not found"):n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...n)=>n[0],terminal:!1})
function n(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function e(t,i){for(;;){if(!(t instanceof Array))return r(t,i);if(t=n(t,i),!(t instanceof Array))return t;if("def"==t[0])return i[t[1]]=e(t[2],i);if("~"==t[0]){let n=e(t[1],i);return n._M=1,n}if("let"==t[0]){i=Object.create(i);for(let n in t[1])n%2&&(i[t[1][n-1]]=e(t[1][n],i));t=t[2]}else{if("`"==t[0])return t[1];if(".-"==t[0]){let n=r(t.slice(1),i),e=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:e}if("."==t[0]){let n=r(t.slice(1),i),e=n[0][n[1]];return e.apply(n[0],n.slice(2))}if("try"==t[0])try{return e(t[1],i)}catch(n){return e(t[2][2],r([t[2][1]],i,[n]))}else if("do"==t[0]){let n=r(t.slice(1,t.length-1),i);t=t[t.length-1]}else if("if"==t[0])t=e(t[1],i)?t[2]:t[3];else{if("fn"==t[0]){let n=function(...n){return e(t[2],r(t[1],i,n))};return n.ast=[t[2],i,t[1]],n}{let n=r(t,i),e=n[0];if(!e.ast)return e(...n.slice(1));t=e.ast[0],i=r(e.ast[2],e.ast[1],n.slice(1))}}}}}let r=function(n,r,t){return t?(r=Object.create(r),n.some((e,i)=>"&"==e?r[n[i+1]]=t.slice(i):(r[e]=t[i],!1)),r):n instanceof Array?n.map((...n)=>e(n[0],r)):"string"==typeof n?n in r?r[n]:E.throw(n+" not found"):n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...n)=>n[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -80,3 +80,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -83,0 +85,0 @@ return f

@@ -1,1 +0,1 @@

for(_='r=kst^[1]9r9@,i$$)#e(II@#HinL L K"==Q[0]P,nE,tD))C(...nB.slicI7B71C;6^rLg5slurp4JSON.ZreY[2]XrXWt(rV[n]Uif(TL^anceof  ArrayYturn !(rCB)=>for(let{ n=QrP)V71typeof Object.nP[n9]YquiY("evalelse:" r.length-1 n9," e.a^),functionZparsIprocess.argvT"cYatIie=; n(n,e){;n&&L e&&e[]._M;)n=e[]6n} Ir#{;;){TV#;Tkn(r$r;defi[@]=IW#;~H;n._M=1E}{i=i); nK@)n%2&&(i[@[n-1]]=I@U$C;kW}{`@;.-2Kn?=nX:e}.e.apply(E72C}trytry{H}catch(n){IWXD([W9]$,UC} do, i);kr[ ]} ifkH?W:r[3];{fnIW,V9$EC;n.a^=[W$,@]E}V$e=;T!)e6kP$=t(X,9E71C}}}}} t=(nD,r){r?(t=tn.somI(e#=>"&Qe?t[n[i+1]]=r7i):(t[e]=r[i],!1)t):n?n.map(IDC:"5Qn?nKt?tU:nullU:n};A=assign(global{js:,I,A"= === < < + + - - * * / /n9$san9DypeEewnew(.bLdB)deldee Dhrow{throw },Yad4fs").YadFileSync(,"utf-8"loadA.(A.4(CARGS:73)}X?A.load(X):Ypl").^art({n[3](!1,Z5ify(IACwriterDermLal:!1})';g=/[-T-Z4-7B-EPQKLHI#$@9^k]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='r=kst^[1]9r9@,i$$)#e(II@#HinL L K"==Q[0]P[2]ErED,nC,tB))7(...n6.slicI56517;4^rLgZslurpYJSON.XreWt(rV[n]Uif(TL^anceof  ArrayWturn !(r7){IDfor(let{ n=QrP)V51typeof Object.nP[n9]WquiW("evalelse:6)=>" r.length-1 n9," e.a^),functionXparsIprocess.argvT"cWatIie=; n(n,e){;n&&L e&&e[]._M;)n=e[]4n} Ir#{;;){TV#;Tkn(r$r;defi[@]=ID#;~H;n._M=1C}{i=i); nK@)n%2&&(i[@[n-1]]=I@U$7;kD}{`@;.-2Kn?=nE:e}.e.apply(C527}trytry{H}catch(nEB([D9]$,U7} do, i);kr[ ]} ifkH?D:r[3];{fn6,V9$C7};n.a^=[D$,@]C}V$e=;T!)e4kP$=t(E,9C517}}}}} t=(nB,r){r?(t=tn.somI(e#=>"&Qe?t[n[i+1]]=r5i):(t[e]=r[i],!1)t):n?n.map(6)=>IB7:"ZQn?nKt?tU:nullU:n};A=assign(global{js:,I,A"= === < < + + - - * * / /n9$san9BypeCewnew(.bLd6)deldee Bhrow{throw },WadYfs").WadFileSync(,"utf-8"loadA.(A.Y(7ARGS:53)}E?A.load(E):Wpl").^art({n[3](!1,XZify(IA7writerBermLal:!1})';g=/[-T-Z4-7B-EPQKLHI#$@9^k]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function e(r,i){for(;;){if(!(r instanceof Array))return t(r,i);if(r=n(r,i),!(r instanceof Array))return r;if("def"==r[0])return i[r[1]]=e(r[2],i);if("~"==r[0]){let n=e(r[1],i);return n._M=1,n}if("let"==r[0]){i=Object.create(i);for(let n in r[1])n%2&&(i[r[1][n-1]]=e(r[1][n],i));r=r[2]}else{if("`"==r[0])return r[1];if(".-"==r[0]){let n=t(r.slice(1),i),e=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:e}if("."==r[0]){let n=t(r.slice(1),i),e=n[0][n[1]];return e.apply(n[0],n.slice(2))}if("try"==r[0])try{return e(r[1],i)}catch(n){return e(r[2][2],t([r[2][1]],i,[n]))}else if("do"==r[0]){let n=t(r.slice(1,r.length-1),i);r=r[r.length-1]}else if("if"==r[0])r=e(r[1],i)?r[2]:r[3];else{if("fn"==r[0]){let n=(...n)=>e(r[2],t(r[1],i,n));return n.ast=[r[2],i,r[1]],n}{let n=t(r,i),e=n[0];if(!e.ast)return e(...n.slice(1));r=e.ast[0],i=t(e.ast[2],e.ast[1],n.slice(1))}}}}}let t=function(n,t,r){return r?(t=Object.create(t),n.some((e,i)=>"&"==e?t[n[i+1]]=r.slice(i):(t[e]=r[i],!1)),t):n instanceof Array?n.map((...n)=>e(n[0],t)):"string"==typeof n?n in t?t[n]:null[n]:n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],isa:(...n)=>n[0]instanceof n[1],type:(...n)=>typeof n[0],new:(...n)=>new(n[0].bind(...n)),del:(...n)=>delete n[0][n[1]],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...n)=>n[0],terminal:!1})
function n(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function e(r,i){for(;;){if(!(r instanceof Array))return t(r,i);if(r=n(r,i),!(r instanceof Array))return r;if("def"==r[0])return i[r[1]]=e(r[2],i);if("~"==r[0]){let n=e(r[1],i);return n._M=1,n}if("let"==r[0]){i=Object.create(i);for(let n in r[1])n%2&&(i[r[1][n-1]]=e(r[1][n],i));r=r[2]}else{if("`"==r[0])return r[1];if(".-"==r[0]){let n=t(r.slice(1),i),e=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:e}if("."==r[0]){let n=t(r.slice(1),i),e=n[0][n[1]];return e.apply(n[0],n.slice(2))}if("try"==r[0])try{return e(r[1],i)}catch(n){return e(r[2][2],t([r[2][1]],i,[n]))}else if("do"==r[0]){let n=t(r.slice(1,r.length-1),i);r=r[r.length-1]}else if("if"==r[0])r=e(r[1],i)?r[2]:r[3];else{if("fn"==r[0]){let n=function(...n){return e(r[2],t(r[1],i,n))};return n.ast=[r[2],i,r[1]],n}{let n=t(r,i),e=n[0];if(!e.ast)return e(...n.slice(1));r=e.ast[0],i=t(e.ast[2],e.ast[1],n.slice(1))}}}}}let t=function(n,t,r){return r?(t=Object.create(t),n.some((e,i)=>"&"==e?t[n[i+1]]=r.slice(i):(t[e]=r[i],!1)),t):n instanceof Array?n.map((...n)=>e(n[0],t)):"string"==typeof n?n in t?t[n]:null[n]:n};E=Object.assign(Object.create(global),{js:eval,eval:(...n)=>e(n[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],isa:(...n)=>n[0]instanceof n[1],type:(...n)=>typeof n[0],new:(...n)=>new(n[0].bind(...n)),del:(...n)=>delete n[0][n[1]],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...n)=>E.eval(JSON.parse(E.slurp(n[0]))),ARGS:process.argv.slice(3)}),process.argv[2]?E.load(process.argv[2]):require("repl").start({eval:(...n)=>n[3](!1,JSON.stringify(e(JSON.parse(n[0]),E))),writer:(...n)=>n[0],terminal:!1})
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -80,3 +80,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -83,0 +85,0 @@ return f

@@ -1,1 +0,1 @@

for(_='),~,["|","z"|ZZ`zYinX X WvalV;t=U=nR[tQifP)=>K(...I:InKnGmapF(tE.FE=>DstrXgCJSON.B,i)5[0]45,fR4("\\n".VuefacZelse]]Object.unctionlet))[2]t.length-1[1]n,",t4.onkeyup]\\n["textareaItKnE4,f.ast { n=eE P(" t Xstanceof Arraycreate(.slice(< rows=9 cols=60>return "==t4)"G4 1)[n];f nE5{for(;;){P(!(eE5; defiQ]RE5; {i=i);for( eWt)e%2&&(iQ[e-1RE[e],iUt}{ `t; .-2Wn?n4[n]R:f} .f.apply(n4,n2} do 1,)5Ut[]} PtRE5?t:t[3];{ fn{ f=IfKnE,eE,i,f; =Q,i,t],f} ;P(! )fIn1U 4,i=e( , ,n1}}}}}var e=fE,e5{i?(e=e~t.some((n,fK"&"=R?eQ[f+1=if):(e[n]=i[f],!1,e):?t.F(e:"C"==typeof t?tWe?eQ]:nullQ]:t};A=assign(this~{js:eV,eV:A~"====<<++--**//n,FGDn4E}~b.XnerHTML=\'["ZmYmXi"|+zmYMAL"defzfnZn"]|PznZ*znZ-zn",1],1Fz`",[7,8,9.zMathYrandom"</></>\',t=b.children=((Kt=t4.split)Dt?BCPy(n(BparseE~A:"").joX()';g=/[^ -36-AHJL-OST[-y{}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='),~,["|","z"|ZZ`zYinX X WvalV;t=U=nR[tQifP)=>K(...I:InKnGmapF(tE.FE=>DstrXgCJSON.B,i)5[0]45,fR4("\\n".VuefacZelse]]Object.let))[2]t.length-1[1]n,",t4.onkeyup]\\n["textareafunctionItKnE4,f.ast { n=eE P(" t Xstanceof Arraycreate(.slice(< rows=9 cols=60>return "==t4)"G4 1)[n]; nE5{for(;;){P(!(eE5; defiQ]RE5; {i=i);for( eWt)e%2&&(iQ[e-1RE[e],iUt}{ `t; .-2Wn?n4[n]R:f} .f.apply(n4,n2} do 1,)5Ut[]} PtRE5?t:t[3];{ fn{ f=If){nE,eE,i,f}; =Q,i,t],f} ;P(! )fIn1U 4,i=e( , ,n1}}}}}var e=E,e5{i?(e=e~t.some((n,fK"&"=R?eQ[f+1=if):(e[n]=i[f],!1,e):?t.F(e:"C"==typeof t?tWe?eQ]:nullQ]:t};A=assign(this~{js:eV,eV:A~"====<<++--**//n,FGDn4E}~b.XnerHTML=\'["ZmYmXi"|+zmYMAL"defzfnZn"]|PznZ*znZ-zn",1],1Fz`",[7,8,9.zMathYrandom"</></>\',t=b.children=((Kt=t4.split)Dt?BCPy(n(BparseE~A:"").joX()';g=/[^ -36-AHJL-OST[-y{}]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

function n(t,i){for(;;){if(!(t instanceof Array))return e(t,i);if("def"==t[0])return i[t[1]]=n(t[2],i);if("let"==t[0]){i=Object.create(i);for(let e in t[1])e%2&&(i[t[1][e-1]]=n(t[1][e],i));t=t[2]}else{if("`"==t[0])return t[1];if(".-"==t[0]){let n=e(t.slice(1),i),f=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:f}if("."==t[0]){let n=e(t.slice(1),i),f=n[0][n[1]];return f.apply(n[0],n.slice(2))}if("do"==t[0]){let n=e(t.slice(1,t.length-1),i);t=t[t.length-1]}else if("if"==t[0])t=n(t[1],i)?t[2]:t[3];else{if("fn"==t[0]){let f=(...f)=>n(t[2],e(t[1],i,f));return f.ast=[t[2],i,t[1]],f}{let n=e(t,i),f=n[0];if(!f.ast)return f(...n.slice(1));t=f.ast[0],i=e(f.ast[2],f.ast[1],n.slice(1))}}}}}var e=function(t,e,i){return i?(e=Object.create(e),t.some((n,f)=>"&"==n?e[t[f+1]]=i.slice(f):(e[n]=i[f],!1)),e):t instanceof Array?t.map((...t)=>n(t[0],e)):"string"==typeof t?t in e?e[t]:null[t]:t};E=Object.assign(Object.create(this),{js:eval,eval:(...t)=>n(t[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],map:(...n)=>n[1].map(t=>n[0](t))}),b.innerHTML='<textarea rows=9 cols=60>["let",["m",["`","mini"]],["+","m",["`","MAL"]]]\n["def","fac",["fn",["n"],["if","n",["*","n",["fac",["-","n",1]]],1]]]\n["map","fac",["`",[7,8,9]]]\n[".","Math",["`","random"]]</textarea><textarea rows=9 cols=60></textarea>',t=b.children,t[0].onkeyup=(()=>t[1].value=t[0].value.split("\n").map(t=>t?JSON.stringify(n(JSON.parse(t),E)):"").join("\n")),t[0].onkeyup()
function n(t,i){for(;;){if(!(t instanceof Array))return e(t,i);if("def"==t[0])return i[t[1]]=n(t[2],i);if("let"==t[0]){i=Object.create(i);for(let e in t[1])e%2&&(i[t[1][e-1]]=n(t[1][e],i));t=t[2]}else{if("`"==t[0])return t[1];if(".-"==t[0]){let n=e(t.slice(1),i),f=n[0][n[1]];return 2 in n?n[0][n[1]]=n[2]:f}if("."==t[0]){let n=e(t.slice(1),i),f=n[0][n[1]];return f.apply(n[0],n.slice(2))}if("do"==t[0]){let n=e(t.slice(1,t.length-1),i);t=t[t.length-1]}else if("if"==t[0])t=n(t[1],i)?t[2]:t[3];else{if("fn"==t[0]){let f=function(...f){return n(t[2],e(t[1],i,f))};return f.ast=[t[2],i,t[1]],f}{let n=e(t,i),f=n[0];if(!f.ast)return f(...n.slice(1));t=f.ast[0],i=e(f.ast[2],f.ast[1],n.slice(1))}}}}}var e=function(t,e,i){return i?(e=Object.create(e),t.some((n,f)=>"&"==n?e[t[f+1]]=i.slice(f):(e[n]=i[f],!1)),e):t instanceof Array?t.map((...t)=>n(t[0],e)):"string"==typeof t?t in e?e[t]:null[t]:t};E=Object.assign(Object.create(this),{js:eval,eval:(...t)=>n(t[0],E),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],map:(...n)=>n[1].map(t=>n[0](t))}),b.innerHTML='<textarea rows=9 cols=60>["let",["m",["`","mini"]],["+","m",["`","MAL"]]]\n["def","fac",["fn",["n"],["if","n",["*","n",["fac",["-","n",1]]],1]]]\n["map","fac",["`",[7,8,9]]]\n[".","Math",["`","random"]]</textarea><textarea rows=9 cols=60></textarea>',t=b.children,t[0].onkeyup=(()=>t[1].value=t[0].value.split("\n").map(t=>t?JSON.stringify(n(JSON.parse(t),E)):"").join("\n")),t[0].onkeyup()
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -57,3 +57,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -60,0 +62,0 @@ return f

@@ -1,1 +0,1 @@

for(_='re||turn z;zZ]=Y,iXinW))V.slice(UU1VT W RvalQ"==P[0]LifKt(I,rHH)G[1]EnED(nCWstanceof B BArray@!C@Vz9let7{7 e=6nL5P5)446$$iCU1#),eLHt=strWgslurpJSON.n=[e)=>[2]for(,etypeof Object.D,"throwelse(...:n " 5 n.length-1 et.astnfunctionparse(K("c|ate(#)E]Zmodule.exports=C){ eC){;n@&&5W e&&e[5]._M;)e[5]nTZn} tCG{;;){K(9iCG;K(eCH9n;def4zr[DYIG;~$tCEGZe._M=1}74{r=r);7 eRD)e%2&&(r[D-1]YtCE]G);}{`4zD;.-2Re?EYe:t}.t.apply(U2V}try4try{ztCEG}catch(e){zIX([E]H,]V} do#, r);n[ ]} K4tCEG?:n[3];{fn$IXCEHVZe.ast=[H,D]}6iC;K(!)zteT;LH=i(,ET}}}}}7 i=(eXG{zr?(i=i).some(C,t"&Pn?i[t+1]YrUt):(i[nYr[t],!1)i):e@?e.map(nI5XV:"Pe?eRi?i]:n.(e+" not found"):e}Zassign(n{js:eQQ:I,n"= ===< <+ +- -* */ /DXsa 5BD,type 5,new new(5.bWdn)del de7e 5[D], { 5}Head 5 |qui|("fs").|adFileSync(5,"utf-8"load:n.eQ(n.(V|p:Ky(InV})}';g=/[^ -"%-38:-?AFJM-OS[-y{}~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_=']=|,izinZt(Y))X.slice(WW1XV Z UvalT"==R[0]QifPreL,rKK)I[1]HnHG(nEZstanceof D DArrayCLturn B!ECXB@let9{9 e=7nQ6R6)55744iEW1$),#eQK#t=strZgslurpJSON.n=[e)=>[2]ne){BYfor(,etypeof Object.G,"throwelse(... : n " 6 : en.length-1t.astparse(P("functioncLate($)H];Bmodule.exports=E){ eE){;nC&&6Z e&&e[6]._M;)e[6] nV;Bn} tEI{;;){P(@iEI;P(eEK#@n;def5Br[G|YI;~4tEHI;Be._M=1}95{r=r);9 eUG)e%2&&(r[G-1]|tEH]I);}{`5BG;.-2Ue?H|e:t}.t.apply(W2X}try5try{BtEHI}catch(z([H]K,]X} do$,#r);n[]} P5tEHI?:n[3];{fn4 zEHKX};Be.ast=[K,G]}7iE;P(!)Bt eV;QK=i(,HV}}}}}9 i=(ezI{Br?(i=i).some(E,t"&Rn?i[t+1]|rWt):(i[n|r[t],!1)#i):eC?e.map( nY6zX:"Re?eUi?i]:n.(e+" not found"):e};Bassign(n#{js:eTTY,n#"= ===< <+ +- -* */ /Gzsa 6DG,type 6,new new(6.bZd n)#del de9e 6[G], { 6}Kead 6# LquiL("fs").LadFileSync(6,"utf-8"#loadn.eT(n.(X#LpPy(Y#nX})}';g=/[^ -"%-38:-?AFJM-OS[-y{}~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

module.exports=function(n){function e(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function t(n,r){for(;;){if(!(n instanceof Array))return i(n,r);if(n=e(n,r),!(n instanceof Array))return n;if("def"==n[0])return r[n[1]]=t(n[2],r);if("~"==n[0]){let e=t(n[1],r);return e._M=1,e}if("let"==n[0]){r=Object.create(r);for(let e in n[1])e%2&&(r[n[1][e-1]]=t(n[1][e],r));n=n[2]}else{if("`"==n[0])return n[1];if(".-"==n[0]){let e=i(n.slice(1),r),t=e[0][e[1]];return 2 in e?e[0][e[1]]=e[2]:t}if("."==n[0]){let e=i(n.slice(1),r),t=e[0][e[1]];return t.apply(e[0],e.slice(2))}if("try"==n[0])try{return t(n[1],r)}catch(e){return t(n[2][2],i([n[2][1]],r,[e]))}else if("do"==n[0]){let e=i(n.slice(1,n.length-1),r);n=n[n.length-1]}else if("if"==n[0])n=t(n[1],r)?n[2]:n[3];else{if("fn"==n[0]){let e=(...e)=>t(n[2],i(n[1],r,e));return e.ast=[n[2],r,n[1]],e}{let e=i(n,r),t=e[0];if(!t.ast)return t(...e.slice(1));n=t.ast[0],r=i(t.ast[2],t.ast[1],e.slice(1))}}}}}let i=function(e,i,r){return r?(i=Object.create(i),e.some((n,t)=>"&"==n?i[e[t+1]]=r.slice(t):(i[n]=r[t],!1)),i):e instanceof Array?e.map((...n)=>t(n[0],i)):"string"==typeof e?e in i?i[e]:n.throw(e+" not found"):e};return n=Object.assign(Object.create(n),{js:eval,eval:(...e)=>t(e[0],n),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],isa:(...n)=>n[0]instanceof n[1],type:(...n)=>typeof n[0],new:(...n)=>new(n[0].bind(...n)),del:(...n)=>delete n[0][n[1]],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...e)=>n.eval(JSON.parse(n.slurp(e[0]))),rep:(...e)=>JSON.stringify(t(JSON.parse(e[0]),n))})}
module.exports=function(n){function e(n,e){for(;n instanceof Array&&n[0]in e&&e[n[0]]._M;)n=e[n[0]](...n.slice(1));return n}function t(n,r){for(;;){if(!(n instanceof Array))return i(n,r);if(n=e(n,r),!(n instanceof Array))return n;if("def"==n[0])return r[n[1]]=t(n[2],r);if("~"==n[0]){let e=t(n[1],r);return e._M=1,e}if("let"==n[0]){r=Object.create(r);for(let e in n[1])e%2&&(r[n[1][e-1]]=t(n[1][e],r));n=n[2]}else{if("`"==n[0])return n[1];if(".-"==n[0]){let e=i(n.slice(1),r),t=e[0][e[1]];return 2 in e?e[0][e[1]]=e[2]:t}if("."==n[0]){let e=i(n.slice(1),r),t=e[0][e[1]];return t.apply(e[0],e.slice(2))}if("try"==n[0])try{return t(n[1],r)}catch(e){return t(n[2][2],i([n[2][1]],r,[e]))}else if("do"==n[0]){let e=i(n.slice(1,n.length-1),r);n=n[n.length-1]}else if("if"==n[0])n=t(n[1],r)?n[2]:n[3];else{if("fn"==n[0]){let e=function(...e){return t(n[2],i(n[1],r,e))};return e.ast=[n[2],r,n[1]],e}{let e=i(n,r),t=e[0];if(!t.ast)return t(...e.slice(1));n=t.ast[0],r=i(t.ast[2],t.ast[1],e.slice(1))}}}}}let i=function(e,i,r){return r?(i=Object.create(i),e.some((n,t)=>"&"==n?i[e[t+1]]=r.slice(t):(i[n]=r[t],!1)),i):e instanceof Array?e.map((...n)=>t(n[0],i)):"string"==typeof e?e in i?i[e]:n.throw(e+" not found"):e};return n=Object.assign(Object.create(n),{js:eval,eval:(...e)=>t(e[0],n),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],isa:(...n)=>n[0]instanceof n[1],type:(...n)=>typeof n[0],new:(...n)=>new(n[0].bind(...n)),del:(...n)=>delete n[0][n[1]],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),slurp:(...n)=>require("fs").readFileSync(n[0],"utf-8"),load:(...e)=>n.eval(JSON.parse(n.slurp(e[0]))),rep:(...e)=>JSON.stringify(t(JSON.parse(e[0]),n))})}
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -82,3 +82,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -85,0 +87,0 @@ return f

@@ -1,1 +0,1 @@

for(_='return Z;ZY]=X))We(V.slicVUU1WT,rR(nQ[1]PR)KnPIVIKH)=>G(...FFtGEinD D C"==B.as@,i9if8Dstanceof 7 7Array6!Q6WZ5let4{4 t=n[0]B)iQU1t[0]K,e=strDgJSON.n=[te@t[2]Objectfor(,ttypeof I,"throw else :FnG " parsVn.length-1nfunction8(".creatV)P]YmDiMAL=Q){ tQ){;n6&&D t&&t[]._M;)t[]FnTYn} eQK{;;){8(5iQK;8(tQK,5n;defZr[IXVK;~HYt._M=1}4{r=r);4 tCI)t%2&&(r[I-1]XVI]K);} {`ZI;.-2Ct?PXt:e}.e.apply(U2W}trytry{ZH}catch(t){ZV9([P]R,]W} do,)K;n[]} 8H?:n[3]; {fnEV9(IRWYt@t=[R,I]}iQ;8(!)ZeFtT;[0]R=i(,PT}}}}}4 i=(t9K{Zr?(i=i).somVQ,eG"&Bn?i[e+1]XrUe):(i[nXr[e],!1W9):t6?t.map(FnGV9W:"Bt?tCi?i]:n. (t+" not found"):t}Y@sign(n||this),{js:eval,eval:EV,n),"====<<++--**//I9sa 7Iype ,new new(.bDdFnW,del de4e [I], { }Read )Rep:E8y(V),nW})}';g=/[^ -3:-?AJL-OS[-~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='return Z;ZY]=X))We(V.slicVUU1WT,rR(nQ[1]PR)KnPIVIKHinG G F"==E.asD,iCifBGstanceof @ @Array9!Q9WZ8let7{7 t=6n[0]5E5)446iQU1t[0]K,e=strGgJSON.n=[teDt[2]nt){ZVObjectfor(,ttypeof I,")=>throw else (... : n"5parsVn.length-1B("function.creatV)P]YmGiMAL=Q){ tQ){;n9&&5G t&&t[5]._M;)t[5] nTYn} eQK{;;){B(8iQK;B(tQK,8n;def4Zr[IXVK;~HYt._M=1}74{r=r);7 tFI)t%2&&(r[I-1]XVI]K);} {`4ZI;.-2Ft?PXt:e}.e.apply(U2W}try4try{ZH}catch(C([P]R,]W} do,)K;n[]} B4H?:n[3]; {fn C(IRW}YtDt=[R,I]}6iQ;B(!)Ze tT;[0]R=i(,PT}}}}}7 i=(tCK{Zr?(i=i).somVQ,e"&En?i[e+1]XrUe):(i[nXr[e],!1WC):t9?t.map( nV5CW:"Et?tFi?i]:n. (t+" not found"):t}YDsign(n||this),{js:eval,eval: tV,n),"====<<++--**//ICsa5@Iype5,newnew(5.bGd nW,delde7e 5[I], { 5}Read5)Rep: tBy(V),nW})}';g=/[^ -3:-?AJL-OS[-~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

miniMAL=function(n){function t(n,t){for(;n instanceof Array&&n[0]in t&&t[n[0]]._M;)n=t[n[0]](...n.slice(1));return n}function e(n,r){for(;;){if(!(n instanceof Array))return i(n,r);if(n=t(n,r),!(n instanceof Array))return n;if("def"==n[0])return r[n[1]]=e(n[2],r);if("~"==n[0]){let t=e(n[1],r);return t._M=1,t}if("let"==n[0]){r=Object.create(r);for(let t in n[1])t%2&&(r[n[1][t-1]]=e(n[1][t],r));n=n[2]}else{if("`"==n[0])return n[1];if(".-"==n[0]){let t=i(n.slice(1),r),e=t[0][t[1]];return 2 in t?t[0][t[1]]=t[2]:e}if("."==n[0]){let t=i(n.slice(1),r),e=t[0][t[1]];return e.apply(t[0],t.slice(2))}if("try"==n[0])try{return e(n[1],r)}catch(t){return e(n[2][2],i([n[2][1]],r,[t]))}else if("do"==n[0]){let t=i(n.slice(1,n.length-1),r);n=n[n.length-1]}else if("if"==n[0])n=e(n[1],r)?n[2]:n[3];else{if("fn"==n[0]){let t=(...t)=>e(n[2],i(n[1],r,t));return t.ast=[n[2],r,n[1]],t}{let t=i(n,r),e=t[0];if(!e.ast)return e(...t.slice(1));n=e.ast[0],r=i(e.ast[2],e.ast[1],t.slice(1))}}}}}let i=function(t,i,r){return r?(i=Object.create(i),t.some((n,e)=>"&"==n?i[t[e+1]]=r.slice(e):(i[n]=r[e],!1)),i):t instanceof Array?t.map((...n)=>e(n[0],i)):"string"==typeof t?t in i?i[t]:n.throw(t+" not found"):t};return n=Object.assign(Object.create(n||this),{js:eval,eval:(...t)=>e(t[0],n),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],isa:(...n)=>n[0]instanceof n[1],type:(...n)=>typeof n[0],new:(...n)=>new(n[0].bind(...n)),del:(...n)=>delete n[0][n[1]],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),rep:(...t)=>JSON.stringify(e(JSON.parse(t[0]),n))})}
miniMAL=function(n){function t(n,t){for(;n instanceof Array&&n[0]in t&&t[n[0]]._M;)n=t[n[0]](...n.slice(1));return n}function e(n,r){for(;;){if(!(n instanceof Array))return i(n,r);if(n=t(n,r),!(n instanceof Array))return n;if("def"==n[0])return r[n[1]]=e(n[2],r);if("~"==n[0]){let t=e(n[1],r);return t._M=1,t}if("let"==n[0]){r=Object.create(r);for(let t in n[1])t%2&&(r[n[1][t-1]]=e(n[1][t],r));n=n[2]}else{if("`"==n[0])return n[1];if(".-"==n[0]){let t=i(n.slice(1),r),e=t[0][t[1]];return 2 in t?t[0][t[1]]=t[2]:e}if("."==n[0]){let t=i(n.slice(1),r),e=t[0][t[1]];return e.apply(t[0],t.slice(2))}if("try"==n[0])try{return e(n[1],r)}catch(t){return e(n[2][2],i([n[2][1]],r,[t]))}else if("do"==n[0]){let t=i(n.slice(1,n.length-1),r);n=n[n.length-1]}else if("if"==n[0])n=e(n[1],r)?n[2]:n[3];else{if("fn"==n[0]){let t=function(...t){return e(n[2],i(n[1],r,t))};return t.ast=[n[2],r,n[1]],t}{let t=i(n,r),e=t[0];if(!e.ast)return e(...t.slice(1));n=e.ast[0],r=i(e.ast[2],e.ast[1],t.slice(1))}}}}}let i=function(t,i,r){return r?(i=Object.create(i),t.some((n,e)=>"&"==n?i[t[e+1]]=r.slice(e):(i[n]=r[e],!1)),i):t instanceof Array?t.map((...n)=>e(n[0],i)):"string"==typeof t?t in i?i[t]:n.throw(t+" not found"):t};return n=Object.assign(Object.create(n||this),{js:eval,eval:(...t)=>e(t[0],n),"=":(...n)=>n[0]===n[1],"<":(...n)=>n[0]<n[1],"+":(...n)=>n[0]+n[1],"-":(...n)=>n[0]-n[1],"*":(...n)=>n[0]*n[1],"/":(...n)=>n[0]/n[1],isa:(...n)=>n[0]instanceof n[1],type:(...n)=>typeof n[0],new:(...n)=>new(n[0].bind(...n)),del:(...n)=>delete n[0][n[1]],throw:(...n)=>{throw n[0]},read:(...n)=>JSON.parse(n[0]),rep:(...t)=>JSON.stringify(e(JSON.parse(t[0]),n))})}
// miniMAL
// Copyright (C) 2016 Joel Martin
// Copyright (C) 2017 Joel Martin
// Licensed under MPL 2.0

@@ -82,3 +82,5 @@

} else if (ast[0] == "fn") { // define new function (lambda)
let f = (...a) => EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
let f = function(...a) {
return EVAL(ast[2], eval_ast_or_bind(ast[1], env, a))
}
f.ast = [ast[2], env, ast[1]] // f.ast compresses more than f.data

@@ -85,0 +87,0 @@ return f

@@ -1,1 +0,1 @@

for(_='["},}|]|{"{z, Z"ZYY}Wz.WVstUreUTandRnthQgetLmapKconH_FIXMEGHcatDGzDW`WCempty?Bpply@keys;Y"::b9WfnW88a7796pr5.-4or3`:2def:+Z}2)null("]]%]]{+$) %]Z($#if!"]Z}?7=Y:aliUz5-*Y"):Object:endfirUa"$:xs]$%Z}T%ringslicetruefalse9"]ZZUr8& "]Z" :clauses z!WW~8&B"],count"|.:JSONU!y x >W "]ZG%|!2n8&zdoW.:Hsolelog|!W=Y1Z}%|zletvar c3e_ns =}do"|+K6z.9KfnWxa:x"]not7!YZ$nil(Z"Z"Z"U?7=Y(],|=Stz4W4HUruct3%|2name%5-*7:5:sepVK8xz!:5U?:x"],"x%]],"az2join sep"$5- ) " )"5#5intl#>=6<$>6>=9!W=]Z$<=6>$8& a%|+?7.:ArrayisArray L649"$set6:c49:c"$Htains?6.hasOwnProperty b"$;7.; vals7K"|fn"|kzL","a","k%|;"Hs6V`Y[]{2D b"$D8&V4W2D%|`@ Q:Lz+7>W"]Z0{QY0],($laU7QW-W"]Z17z4length"B7?!W=Y0Z}%ZZ{=Y(7:Uart:&lzletWendW!W>Wl"]Z0{LlY0{%{. Uart"T7Y1]]{def@8f:&9z.:fa@ fWDW9Y0Z-1]Z}laU9"]RRRCR|`ndG%]]3(33Gz23C3]]]HdW~8&0{!1{Q Y1{throwHd requires an even number of f3ms%{HsHdTWT %]],(classOf7V4W45ototype%)toSt%|2call a%],(]';g=/[^ "&*,-1<-?AEFIJM-PSX[-y~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='nd}",||"{{e}zfirZnthY,["W"WVVfnVUUa{bT]WR"]QQWLL.K,!0H{aG,nullD=G"D]CstBliB@pr-@*;Array:if9or8,!17U&G6V.-5{xs4get3map2con+_FIXME)+cat()L(V`V%T{cK$empty?#UaL?="def{]]R","applykeyscount`{VL;G{ObjectTKB4slicetringBr6 G{bQ7H "W Q,"L9VV~U&4#4QV.{JSONs9yx)LZ @9L.-GlengthQn6LdoV.{+solelog Q,!W9V=|1W4 ZL@letL@var c8e_ns=["doV2{b2LfnVxLa{x"not9G"7HnilDtrueHfalse7s?UaC7W=SK-5G+Bruct8 name"];$V2UxL9{cs?{xx","aLjoinbpr- QH Q7pr0Dprintl1D>=T< >T>=G{b= ]7<=T> @6a @?.{:is:a3-G{bset$-G{b{c+tains?GhasOwnPropertyb.avals2UkL3G{k GQ+sV`|[W(L@Gb(6K5V@L( aL@aY{3LZBUa>V],0RYG|0]DlaBYGV-V],1]#Ua@?G=|0WH7RCT{&zKGbV9V>VzQ,0R3z|0RreBG|1aUf{&{bK{fafV(V{b|0,-1RlaB{b"a}Ha}a}%a} re a})"]8D88)L8%8 re"classOf.55prototype toS calla"]D]';g=/[^ -"&*,-1<-?AEFIJM-PSX[-y~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

@@ -1,1 +0,1 @@

for(_='return Z;ZY]=X))We(V.slicVUU1WT,rR(nQ[1]PR)KnPIVIKH)=>G(...FFtGEinD D C"==B.as@,i9if8Dstanceof 7 7Array6!Q6WZ5let4{4 t=n[0]B)iQU1t[0]K,e=strDgJSON.n=[te@t[2]Objectfor(,ttypeof I,"throw else :FnG " parsVn.length-1nfunction8(".creatV)P]YmDiMAL=Q){ tQ){;n6&&D t&&t[]._M;)t[]FnTYn} eQK{;;){8(5iQK;8(tQK,5n;defZr[IXVK;~HYt._M=1}4{r=r);4 tCI)t%2&&(r[I-1]XVI]K);} {`ZI;.-2Ct?PXt:e}.e.apply(U2W}trytry{ZH}catch(t){ZV9([P]R,]W} do,)K;n[]} 8H?:n[3]; {fnEV9(IRWYt@t=[R,I]}iQ;8(!)ZeFtT;[0]R=i(,PT}}}}}4 i=(t9K{Zr?(i=i).somVQ,eG"&Bn?i[e+1]XrUe):(i[nXr[e],!1W9):t6?t.map(FnGV9W:"Bt?tCi?i]:n. (t+" not found"):t}Y@sign(n||this),{js:eval,eval:EV,n),"====<<++--**//I9sa 7Iype ,new new(.bDdFnW,del de4e [I], { }Read )Rep:E8y(V),nW})}';g=/[^ -3:-?AJL-OS[-~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)
for(_='return Z;ZY]=X))We(V.slicVUU1WT,rR(nQ[1]PR)KnPIVIKHinG G F"==E.asD,iCifBGstanceof @ @Array9!Q9WZ8let7{7 t=6n[0]5E5)446iQU1t[0]K,e=strGgJSON.n=[teDt[2]nt){ZVObjectfor(,ttypeof I,")=>throw else (... : n"5parsVn.length-1B("function.creatV)P]YmGiMAL=Q){ tQ){;n9&&5G t&&t[5]._M;)t[5] nTYn} eQK{;;){B(8iQK;B(tQK,8n;def4Zr[IXVK;~HYt._M=1}74{r=r);7 tFI)t%2&&(r[I-1]XVI]K);} {`4ZI;.-2Ft?PXt:e}.e.apply(U2W}try4try{ZH}catch(C([P]R,]W} do,)K;n[]} B4H?:n[3]; {fn C(IRW}YtDt=[R,I]}6iQ;B(!)Ze tT;[0]R=i(,PT}}}}}7 i=(tCK{Zr?(i=i).somVQ,e"&En?i[e+1]XrUe):(i[nXr[e],!1WC):t9?t.map( nV5CW:"Et?tFi?i]:n. (t+" not found"):t}YDsign(n||this),{js:eval,eval: tV,n),"====<<++--**//ICsa5@Iype5,newnew(5.bGd nW,delde7e 5[I], { 5}Read5)Rep: tBy(V),nW})}';g=/[^ -3:-?AJL-OS[-~]/.exec(_);)with(_.split(g))_=join(shift());eval(_)

Sorry, the diff of this file is not supported yet