docs: function (compiled_expr) {
        // TODO: This is a temporary solution and should be done by 
        //       rewriting the ast instead.
        if (compiled_expr) {
          var m;
          if (m = compiled_expr.match(/^\[\"send\:args\:\"\]\(\".\"\, \[\"([^\" | .]+)\"\]\)/)) {
            return m[1] + compiled_expr.substring(m[0].length);
          } else if (compiled_expr.match(/^\./)) {
            return compiled_expr.replace(/^\./, "")
          } else if (compiled_expr.match(/^\[\"send:args:\"\]/)) {
            return join("$elf", compiled_expr);
          } else if (compiled_expr.match(/^\`\$js\$\`/)) {
            return compiled_expr.replace(/^\`\$js\$\`/, '');
          } else if (compiled_expr.match(/^\$elf/)) {
            return compiled_expr;
          } else if (compiled_expr.match(/^(true|false)$/)) {
            return compiled_expr;
          } else {
            return compiled_expr.replace(/^[a-zA-Z\$\_][a-zA-Z0-9\$\_\-\?\!]*/, function (m) {
              if (!m.match(/return|self|function/)) {
                return '$elf["send:"]("' + m + '")';
              } else {
                return m;
              }
            });
          }
        } else {
          return compiled_expr;
        }
      }