Skip to content

Commit

Permalink
Various wording changes and fixing of function application bug
Browse files Browse the repository at this point in the history
  • Loading branch information
Mike Rowland committed Aug 7, 2012
1 parent aef9619 commit 6bb2551
Show file tree
Hide file tree
Showing 24 changed files with 522 additions and 574 deletions.
17 changes: 10 additions & 7 deletions js-runtime/lib/control.js
Expand Up @@ -872,17 +872,20 @@ var selectProcedureByArity = function(aState, n, procValue, operands) {
var argStr = getArgStr('; arguments were:');
var positionStack = state.captureCurrentContinuationMarks(aState).ref(types.symbol('moby-application-position-key'));

console.log("positionStack is ", positionStack);

var locationList = positionStack[positionStack.length - 1];
var exprLoc = positionStack[0].first().elts;
var argColoredParts = getArgColoredParts(locationList.rest());

var openParen = [exprLoc[0], exprLoc[1], exprLoc[2], exprLoc[3], 1];
var locs = locationList;
var exprLoc;
while(!locs.isEmpty()){
exprLoc = locs.first().elts;
locs = locs.rest();
}

var closeParen = [exprLoc[0], exprLoc[1] + exprLoc[4] - 1, exprLoc[2], exprLoc[3] + exprLoc[4] - 1, 1];
var argColoredParts = getArgColoredParts(locationList.rest());

var op = types.vector(openParen);
var cp = types.vector(closeParen);
var op = types.vector([exprLoc[0], exprLoc[1], exprLoc[2], exprLoc[3], 1]);
var cp = types.vector([exprLoc[0], exprLoc[1] + exprLoc[4] - 1, exprLoc[2], exprLoc[3] + exprLoc[4] - 1, 1]);

helpers.raise(
types.incompleteExn(types.exnFailContract,
Expand Down
2 changes: 1 addition & 1 deletion js-runtime/lib/helpers.js
Expand Up @@ -9,7 +9,7 @@ var helpers = {};

var format = function(formatStr, args, functionName) {
var throwFormatError = function() {
functionName = functionName || '#<procedure>';
functionName = functionName || '#<function>';
var matches = formatStr.match(new RegExp('~[sSaA]', 'g'));
var expectedNumberOfArgs = matches == null ? 0 : matches.length;
var errorStrBuffer = [functionName + ': format string requires ' + expectedNumberOfArgs
Expand Down
167 changes: 64 additions & 103 deletions js-runtime/lib/primitive.js

Large diffs are not rendered by default.

24 changes: 12 additions & 12 deletions js-runtime/lib/types.js
Expand Up @@ -1592,7 +1592,7 @@ var liftToplevelToFunctionValue = function(primitiveF,
return this === other;
}
lifted.toWrittenString = function(cache) {
return "#<procedure:" + name + ">";
return "#<function:" + name + ">";
};
lifted.toDisplayedString = lifted.toWrittenString;
lifted.procedureArity = procedureArityDescription;
Expand Down Expand Up @@ -1672,9 +1672,9 @@ var ClosureValue = function(name, locs, numParams, paramTypes, isRest, closureVa

ClosureValue.prototype.toString = function() {
if (this.name !== Empty.EMPTY) {
return helpers.format("#<procedure:~a>", [this.name]);
return helpers.format("#<function:~a>", [this.name]);
} else {
return "#<procedure>";
return "#<function>";
}
};

Expand Down Expand Up @@ -1702,9 +1702,9 @@ var ContinuationClosureValue = function(vstack, cstack) {

ContinuationClosureValue.prototype.toString = function() {
if (this.name !== Empty.EMPTY) {
return helpers.format("#<procedure:~a>", [this.name]);
return helpers.format("#<function:~a>", [this.name]);
} else {
return "#<procedure>";
return "#<function>";
}
};

Expand Down Expand Up @@ -1883,21 +1883,21 @@ var PrimProc = function(name, numParams, isRest, assignsToValueRegister, impl) {
};

PrimProc.prototype.toString = function() {
return ("#<procedure:" + this.name + ">");
return ("#<function:" + this.name + ">");
};

PrimProc.prototype.toWrittenString = function(cache) {
return ("#<procedure:" + this.name + ">");
return ("#<function:" + this.name + ">");
};

PrimProc.prototype.toDisplayedString = function(cache) {
return ("#<procedure:" + this.name + ">");
return ("#<function:" + this.name + ">");
};


PrimProc.prototype.toDomNode = function(cache) {
var div = document.createElement("span");
div.appendChild(document.createTextNode("#<procedure:"+ this.name +">"));
div.appendChild(document.createTextNode("#<function:"+ this.name +">"));
return div;
};

Expand All @@ -1910,16 +1910,16 @@ var CasePrimitive = function(name, cases) {

CasePrimitive.prototype.toDomNode = function(cache) {
var div = document.createElement("span");
div.appendChild(document.createTextNode("#<procedure:"+ this.name +">"));
div.appendChild(document.createTextNode("#<function:"+ this.name +">"));
return div;
};

CasePrimitive.prototype.toWrittenString = function(cache) {
return ("#<procedure:" + this.name + ">");
return ("#<function:" + this.name + ">");
};

CasePrimitive.prototype.toDisplayedString = function(cache) {
return ("#<procedure:" + this.name + ">");
return ("#<function:" + this.name + ">");
};


Expand Down
2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap/autos-teachpack.js

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap/bootstrap-teachpack.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap/cage-teachpack.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap/function-teachpack.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap2011/bootstrap-common.js

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap2011/cage-teachpack.js

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap2012/bootstrap-common.js

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/bootstrap2012/cage-teachpack.js

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/jsworld/google-maps.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion servlet-htdocs/collects/jsworld/phonegap.js

Large diffs are not rendered by default.

0 comments on commit 6bb2551

Please sign in to comment.