0.0.4 • Published 11 years ago
inteliscript v0.0.4
Inteliscript
The Inteliscript module can compile Inteliscript to vanilla JavaScript
Install
$ cd /your/project-folder
$ npm install inteliscript --saveTesting
$ sudo install -g mocha
$ cd /node_modules/inteliscript
$ npm testYou need mocha installed globally for testing.
How to use
In JavaScript
var inteliscript = require('inteliscript');
var script = 'exec $.getJSON "http://www.google.com/", into googlesHtml';
var expression = inteliscript.compile(script);the variable expression now contains the vanilla javascript which can be evaluated with localEval
In CoffeeScript
inteliscript = require 'inteliscript'
script = 'exec $.getJSON "http://www.google.com/", into googlesHtml'
expression = inteliscript.compile(script)the variable expression now contains the vanilla javascript which can be evaluated with localEval
Options
3 console logs of the raw Inteliscript, the IcedCoffeeScript and the final vanilla JavaScript
inteliscript.compile(String, {verbose: true});inteliscript.compile String,
  verbose: trueCompiled examples
Example #1
Inteliscript input (written in Inteliscript)
exec $.getJSON 'http://www.google.com/', into googlesHtml
console.log googlesHtmlJavaScript output
(function() {
  var googlesHtml, iced, __iced_deferrals, __iced_k, __iced_k_noop;
  iced = require('iced-runtime');
  __iced_k = __iced_k_noop = function() {};
  (function(_this) {
    return (function(__iced_k) {
      __iced_deferrals = new iced.Deferrals(__iced_k, {});
      $.getJSON('http://www.google.com/', __iced_deferrals.defer({
        assign_fn: (function() {
          return function() {
            return googlesHtml = arguments[0];
          };
        })(),
        lineno: 0
      }));
      __iced_deferrals._fulfill();
    });
  })(this)((function(_this) {
    return function() {
      return console.log(googlesHtml);
    };
  })(this));
}).call(this);Example #2
Inteliscript input (written in Inteliscript)
exec
  $.getJSON 'http://www.example.com/', into exampleComOutput
  $.getJSON 'http://www.example2.com/', into example2ComOutput
  $.getJSON 'http://www.example3.com/', into example3ComOutput
concat = exampleComOutput + example2ComOutput + example3ComOutput
console.log concatJavaScript output
(function() {
  var concat, example2ComOutput, example3ComOutput, exampleComOutput, iced, __iced_deferrals, __iced_k, __iced_k_noop;
  iced = require('iced-runtime');
  __iced_k = __iced_k_noop = function() {};
  (function(_this) {
    return (function(__iced_k) {
      __iced_deferrals = new iced.Deferrals(__iced_k, {});
      $.getJSON('http://www.example.com/', __iced_deferrals.defer({
        assign_fn: (function() {
          return function() {
            return exampleComOutput = arguments[0];
          };
        })(),
        lineno: 1
      }));
      $.getJSON('http://www.example2.com/', __iced_deferrals.defer({
        assign_fn: (function() {
          return function() {
            return example2ComOutput = arguments[0];
          };
        })(),
        lineno: 2
      }));
      $.getJSON('http://www.example3.com/', __iced_deferrals.defer({
        assign_fn: (function() {
          return function() {
            return example3ComOutput = arguments[0];
          };
        })(),
        lineno: 3
      }));
      __iced_deferrals._fulfill();
    });
  })(this)((function(_this) {
    return function() {
      concat = exampleComOutput + example2ComOutput + example3ComOutput;
      return console.log(concat);
    };
  })(this));
}).call(this);