earlgrey
Version:
Programming language compiling to JavaScript, featuring macros, dynamic typing annotations and pattern matching.
4 lines (2 loc) • 9.7 kB
JavaScript
'use strict';require('earlgrey-runtime/5');var f$2=void 0;var f$3=void 0;var f$4=void 0;var f$5=void 0;var f$6=void 0;var f$7=void 0;var f$8=void 0;var $targ$4=void 0;var $targ$5=void 0;var $targ$6=void 0;var $targ$7=void 0;var $targ$8=void 0;var $targ$9=void 0;var $targ$10=void 0;var $targ$11=void 0;var $targ$12=void 0;var $targ$13=void 0;var $targ$14=void 0;var $targ$15=void 0;var $targ$16=void 0;var $targ$17=void 0;var GenSym$0=void 0;var gensym$0=void 0;var identity$0=void 0;var binsearch$0=void 0;var classify$0=void 0;var classify_contiguous$0=void 0;var partition$0=void 0;var construct$0=void 0;var mkset$0=void 0;var Body$0=void 0;var camelCase$0=void 0;var invCamelCase$0=void 0;var mac1$0=void 0;var __chk_ncache$0=void 0;var __chk_scache$0=void 0;var checker_db$0=void 0;GenSym$0=function GenSym(prefix$0){var id$0=void 0;id$0=0;return function(){var r$0=void 0;var pfx$0=void 0;var t0$0=void 0;var m$0$0=void 0;m$0$0=arguments;t0$0=m$0$0.length;if(t0$0>=0&&t0$0<=1){if(0>=t0$0){pfx$0="";}else{pfx$0=m$0$0[0];}r$0=pfx$0+prefix$0+[true,String(id$0)][1];id$0++;return r$0;}else{return ___match_error(m$0$0,"{pfx = \"\"}");}};};gensym$0=GenSym$0("$$");identity$0=function identity(x$0){return x$0;};binsearch$0=function binsearch(xs$0,x$1){var lo$0=void 0;var hi$0=void 0;lo$0=0;hi$0=xs$0.length-1;$0:while(lo$0<=hi$0){var m$1$0=void 0;var mid$0=void 0;var v$0=void 0;mid$0=lo$0+(hi$0-lo$0>>1);v$0=send(xs$0,mid$0);m$1$0=send(xs$0,mid$0);if(m$1$0<x$1){lo$0=mid$0+1;lo$0;}else{if(m$1$0>x$1){hi$0=mid$0-1;hi$0;}else{return mid$0+1;}}}return lo$0;};classify$0=function classify(){var m$3=void 0;var results$0=void 0;var xs$1=void 0;var classes$0=void 0;var t0$1=void 0;var m$2$0=void 0;m$2$0=arguments;t0$1=m$2$0.length;if(t0$1>=1){classes$0=Array.prototype.slice.call(m$2$0,0,-1);xs$1=m$2$0[t0$1-1];results$0={"rest":[]};m$3=null;var _iteratorNormalCompletion=true;var _didIteratorError=false;var _iteratorError=undefined;try{$1:for(var _iterator=classes$0[Symbol.iterator](),_step;!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=true){m$3=_step.value;var $targ$0=void 0;var cls$0=void 0;cls$0=m$3;$targ$0=[];results$0[cls$0]=$targ$0;void 0;}}catch(err){_didIteratorError=true;_iteratorError=err;}finally{try{if(!_iteratorNormalCompletion&&_iterator.return){_iterator.return();}}finally{if(_didIteratorError){throw _iteratorError;}}}$2:while(xs$1.length){var x$2=void 0;var other$0=void 0;var cls$1=void 0;var x$3=void 0;var newxs$0=void 0;var t0$2=void 0;var m$4$0=void 0;m$4$0=xs$1.shift();if(Array.isArray(m$4$0)&&(t0$2=m$4$0.length,t0$2>=1&&m$4$0[0]==="splice")){newxs$0=Array.prototype.slice.call(m$4$0,1);xs$1=newxs$0.concat(xs$1);xs$1;}else{if(x$2=m$4$0,x$2 instanceof Array&&x$2[0]==="ignore"){null;}else{if(Array.isArray(m$4$0)&&(t0$2=m$4$0.length,t0$2===2&&(cls$1=m$4$0[0],x$3=m$4$0[1],send(results$0,cls$1)))){send(results$0,cls$1).push(x$3);}else{other$0=m$4$0;results$0.rest.push(other$0);}}}}return results$0;}else{return ___match_error(m$2$0,"{*classes, var xs}");}};classify_contiguous$0=function classify_contiguous(xs$2,classifier$0){var m$5=void 0;var groups$0=void 0;var currcls$0=void 0;var curr$0=void 0;groups$0=[];currcls$0=null;curr$0=null;m$5=null;var _iteratorNormalCompletion2=true;var _didIteratorError2=false;var _iteratorError2=undefined;try{$3:for(var _iterator2=xs$2[Symbol.iterator](),_step2;!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=true){m$5=_step2.value;var cls$2=void 0;var x$4=void 0;x$4=m$5;cls$2=classifier$0(x$4);if(cls$2===currcls$0){curr$0.push(x$4);}else{if(curr$0){groups$0.push(curr$0);}curr$0=[cls$2,x$4];currcls$0=cls$2;currcls$0;}}}catch(err){_didIteratorError2=true;_iteratorError2=err;}finally{try{if(!_iteratorNormalCompletion2&&_iterator2.return){_iterator2.return();}}finally{if(_didIteratorError2){throw _iteratorError2;}}}if(curr$0){groups$0.push(curr$0);}return groups$0;};partition$0=function partition(xs$3,predicate$0){var m$6=void 0;var t$0=void 0;var f$0=void 0;t$0=[];f$0=[];m$6=null;var _iteratorNormalCompletion3=true;var _didIteratorError3=false;var _iteratorError3=undefined;try{$4:for(var _iterator3=xs$3[Symbol.iterator](),_step3;!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=true){m$6=_step3.value;var x$6=void 0;var x$5=void 0;x$5=m$6;if(predicate$0(x$5)){t$0.push(x$5);}else{x$6=m$6;f$0.push(x$6);}}}catch(err){_didIteratorError3=true;_iteratorError3=err;}finally{try{if(!_iteratorNormalCompletion3&&_iterator3.return){_iterator3.return();}}finally{if(_didIteratorError3){throw _iteratorError3;}}}return[t$0,f$0];};construct$0=function construct(ph$0$0,fn$0,zero$0){var x$8=void 0;var rest$0=void 0;var x$7=void 0;var $$31815$0=void 0;var $$31816$0=void 0;var t0$3=void 0;var t1$0=void 0;t0$3=ph$0$0;t1$0=t0$3.length;if(t1$0===0){return zero$0;}else{if(t1$0===1){x$7=t0$3[0];return x$7;}else{if(t1$0>=1){x$8=t0$3[0];rest$0=Array.prototype.slice.call(t0$3,1);return fn$0(x$8,construct$0(rest$0,fn$0,zero$0));}else{return ___match_error(ph$0$0,"{x, *rest}");}}}};mkset$0=function mkset(xs$4){var m$7=void 0;var rval$0=void 0;rval$0={};m$7=null;var _iteratorNormalCompletion4=true;var _didIteratorError4=false;var _iteratorError4=undefined;try{$5:for(var _iterator4=xs$4[Symbol.iterator](),_step4;!(_iteratorNormalCompletion4=(_step4=_iterator4.next()).done);_iteratorNormalCompletion4=true){m$7=_step4.value;var $targ$1=void 0;var x$9=void 0;x$9=m$7;$targ$1=true;rval$0[x$9]=$targ$1;void 0;}}catch(err){_didIteratorError4=true;_iteratorError4=err;}finally{try{if(!_iteratorNormalCompletion4&&_iterator4.return){_iterator4.return();}}finally{if(_didIteratorError4){throw _iteratorError4;}}}return rval$0;};Body$0=function Body(temp$0$0){var t0$4=void 0;var xs$5=void 0;var t0$5=void 0;var t1$1=void 0;var x$10=void 0;var ph$1$0=void 0;t0$4=temp$0$0;x$10=t0$4;ph$1$0=t0$4;t0$5=ph$1$0;t1$1=t0$5.length;if(t1$1>=1&&t0$5[0]==="multi"){xs$5=Array.prototype.slice.call(t0$5,1);return xs$5;}else{return[x$10];}};camelCase$0=function camelCase(x$11){if(equal(x$11.indexOf("-"),-1)){return x$11;}else{return x$11.replace(RegExp("-([A-Za-z0-9_])","g"),function(temp$1$0,m$8){return m$8.toUpperCase();});}};invCamelCase$0=function invCamelCase(x$12){return x$12.replace(RegExp("([a-z0-9])([A-Z]+)","g"),function(temp$2$0,m1$0,m2$0){return m1$0+"-"+m2$0.toLowerCase();});};mac1$0=function mac1(){var f$1=void 0;var name$0=void 0;var t0$6=void 0;var m$9$0=void 0;m$9$0=arguments;t0$6=m$9$0.length;if(t0$6>=1&&t0$6<=2){f$1=m$9$0[0];if(1>=t0$6){name$0=null;}else{name$0=m$9$0[1];}return["macro",function(context$0,scope$0,form$0,ph$2$0){var expr$0=void 0;var $$31944$0=void 0;var t0$7=void 0;var t1$2=void 0;t0$7=ph$2$0;t1$2=t0$7.length;if(t1$2===2&&t0$7[0]==="data"){expr$0=t0$7[1];return f$1(expr$0);}else{if(Array.isArray(t0$7)&&(t1$2=t0$7.length,t1$2===1&&t0$7[0]==="void"&&name$0)){return["variable",name$0];}else{return ___match_error(ph$2$0,"#void{} when name");}}}];}else{return ___match_error(m$9$0,"{f, name = null}");}};__chk_ncache$0={};__chk_scache$0={};checker_db$0=function checker_db(ph$3$0){var v$1=void 0;var $targ$2=void 0;var v$2=void 0;var $targ$3=void 0;var s$0=void 0;var n$0=void 0;var $$31988$0=void 0;var t0$8=void 0;if(ph$3$0===null){return checker_db$0.null;}else{if(ph$3$0===void 0){return checker_db$0.undefined;}else{if(ph$3$0===true){return checker_db$0.true;}else{if(ph$3$0===false){return checker_db$0.false;}else{t0$8=ph$3$0;if(typeof t0$8==="number"){n$0=t0$8;if(send(__chk_ncache$0,n$0)){return send(__chk_ncache$0,n$0);}else{v$1=mac1$0(function(x$13){return["send",["symbol","==="],["data",x$13,["value",n$0]]];});$targ$2=v$1;__chk_ncache$0[n$0]=$targ$2;return v$1;}}else{if(typeof t0$8==="string"){s$0=t0$8;if(Object.prototype.hasOwnProperty.call(__chk_scache$0,s$0)){return send(__chk_scache$0,s$0);}else{v$2=mac1$0(function(x$14){return["send",["symbol","==="],["data",x$14,["value",s$0]]];});$targ$3=v$2;__chk_scache$0[s$0]=$targ$3;return v$2;}}else{return ___match_error(ph$3$0,"String? s");}}}}}}};__amp____colon__(checker_db$0,{"String":(f$2=function f(x$15){return["send",["symbol","==="],["data",["send",["symbol","typeof"],["data",x$15]],["value","string"]]];},mac1$0(f$2,"String")),"Number":(f$3=function f(x$16){return["send",["symbol","==="],["data",["send",["symbol","typeof"],["data",x$16]],["value","number"]]];},mac1$0(f$3,"Number")),"Array":(f$4=function f(x$17){return["send",["send",["symbol","Array"],["send",["symbol","."],["data",["void"],["symbol","isArray"]]]],["data",x$17]];},mac1$0(f$4,"Array")),"true":(f$5=function f(x$18){return x$18;},mac1$0(f$5,"true")),"false":(f$6=function f(x$19){return["send",["symbol","not"],["data",["void"],x$19]];},mac1$0(f$6,"false")),"null":(f$7=function f(x$20){return["send",["symbol","==="],["data",x$20,["value",null]]];},mac1$0(f$7,"null")),"undefined":(f$8=function f(x$21){return["send",["symbol","==="],["data",x$21,["value",undefined]]];},mac1$0(f$8,"undefined"))});$targ$4=GenSym$0;exports["GenSym"]=$targ$4;$targ$5=gensym$0;exports["gensym"]=$targ$5;$targ$6=identity$0;exports["identity"]=$targ$6;$targ$7=binsearch$0;exports["binsearch"]=$targ$7;$targ$8=classify$0;exports["classify"]=$targ$8;$targ$9=classify_contiguous$0;exports["classify_contiguous"]=$targ$9;$targ$10=partition$0;exports["partition"]=$targ$10;$targ$11=construct$0;exports["construct"]=$targ$11;$targ$12=mkset$0;exports["mkset"]=$targ$12;$targ$13=Body$0;exports["Body"]=$targ$13;$targ$14=camelCase$0;exports["camelCase"]=$targ$14;$targ$15=invCamelCase$0;exports["invCamelCase"]=$targ$15;$targ$16=mac1$0;exports["mac1"]=$targ$16;$targ$17=checker_db$0;exports["checker_db"]=$targ$17;void 0;
//# sourceMappingURL=util.js.map