code: function prepareFunc(func, builder, basepath) { //Prepare an implied function for repeated use
    funcStringCache[func] = funcStringCache[func] || ('(function() { with (proxy(scope)) { return ('+func.toString()+')('+defaultScopeName+'); } })()');
  
    return function(scope) {
      var scope = scope || {};
      var builder = builder || stringBuilder;
      var proxy = jshtmlProxy(new builder(basepath));
      var ret = eval(funcStringCache[func]);
      if (ret && typeof(ret.then) === 'function') { //looks like a promise. Let's use it why don't we?
        ret.proxy = proxy;
        return ret;
      }
      return proxy.collect();
    }
  }
docs: Cache stringified functions for implied usage