UNPKG

lispyscript

Version:

A JavaScript with Lispy Syntax and Macros

58 lines (56 loc) 1.8 kB
// 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"}]));