lamda/lamda.js
function(name, src, onload, requester, errorback) {

        // XHR because it's easier to work with, doesn't pollute and has no reliance on DOM.
        // This means support for web workers, possibility to add a pre-processing pipeline
        // along with potential to cache scripts for re-use in other contexts.
        var xhr = new XMLHttpRequest();
        xhr.open("GET", src, true);
        var onerror = function(e) {
            if (errorback) {
                errorback({
                    src: src,
                    requester: requester
                });
            } else {
                throw new Error('\n  Missing: ' + src + '\n  Requester: ' + requester);
            }
        };
        xhr.onerror = onerror;
        xhr.onload = function() {
            if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {
                var output = xhr.responseText;
                output += "\n//# sourceURL=" + self.location.protocol + "//" + resolveRelative(self.location.host + self.location.pathname, src);
                eval.call(null, output);
                onload();
            } else {
                onerror();
            }
        };
        xhr.send();
    }
function(name, src, onload, requester, errorback) {

        // XHR because it's easier to work with, doesn't pollute and has no reliance on DOM.
        // This means support for web workers, possibility to add a pre-processing pipeline
        // along with potential to cache scripts for re-use in other contexts.
        var xhr = new XMLHttpRequest();
        xhr.open("GET", src, true);
        var onerror = function(e) {
            if (errorback) {
                errorback({
                    src: src,
                    requester: requester
                });
            } else {
                throw new Error('\n  Missing: ' + src + '\n  Requester: ' + requester);
            }
        };
        xhr.onerror = onerror;
        xhr.onload = function() {
            if (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) {
                var output = xhr.responseText;
                output += "\n//# sourceURL=" + self.location.protocol + "//" + resolveRelative(self.location.host + self.location.pathname, src);
                eval.call(null, output);
                onload();
            } else {
                onerror();
            }
        };
        xhr.send();
    }
Transport is separated into a separate function because it can be overrided by the lamda-optimizer tool to use NodeJS functions instead.