lispyscript
Version:
A JavaScript with Lispy Syntax and Macros
58 lines (56 loc) • 1.8 kB
JavaScript
// Generated by LispyScript v1.0.0
var square = function(n) {
return (n * n);
};
console.log(square(10));
(function() {
try {
console.log("In try");
(function(){throw "In catch";})();
} catch (e) {
return (function(err) {
return console.log(err);
})(e);
}
})();
((typeof(window) === "undefined") ?
console.log("Not Running on browser") :
console.log("Running on browser"));
var arr = [1, 2, 3, 4, 5];
console.log(arr[2]);
((1 !== 2) ?
console.log("Nos are not equal") :
undefined);
((Object.prototype.toString.call(console) === "[object Object]") ?
console.log("console is an object") :
console.log("console is not an object"));
((Object.prototype.toString.call(console) === "[object Array]") ?
console.log("console is an array") :
console.log("console is not an array"));
console.log((10 * 10));
var i = 2;
console.log((i++ * i++));
var _ = require('underscore');
Array.prototype.forEach.call([1, 2, 3],function(elem,i,list) {
return console.log(elem);
});
(function(name,email,tel) {
console.log(name);
return console.log(email);
})("John","john@example.com","555-555-5556");
(function() {
console.log("testing do");
return console.log("test again");
})();
console.log(["Hello1"," world1"].join(''));
var link = function(data) {
return ["<li><a href=",(data).href,">",(data).text,"</a></li>\n"].join('');
};
var page = function(title,links) {
return ["<!DOCTYPE html>\n<html>\n<head>\n <title>",title,"</title>\n</head>\n<body>\n<ul class='nav'>",(links).reduce(function(memo,elem) {
return (memo + link(elem));
},""),"</ul>\n</body>\n</html>"].join('');
};
console.log(page("My Home Page",[{href:"/about", text:"About"},
{href:"/products", text:"Products"},
{href:"/contact", text:"Contact"}]));