Browse Source

Merge pull request #9 from oftn/master

a few tweaks based on jshint
pull/21/head
Wesley Kerfoot 11 years ago
parent
commit
3b7c76b0d7
  1. 1
      closure_conversion.js
  2. 2
      desugar.js
  3. 2
      parse.js
  4. 9
      tokenize.js

1
closure_conversion.js

@ -137,6 +137,7 @@ function closure_convert_all(stx) {
stx.thenexp = closure_convert_all(stx.thenexp);
return stx;
}
break;
case "Definition":
stx.val = closure_convert_all(stx.val);
return stx;

2
desugar.js

@ -64,7 +64,7 @@ function desugar(stx) {
case "Name":
return stx;
case "Application":
if ((stx.func.func != undefined ) &&
if ((stx.func.func !== undefined ) &&
(stx.func.func.ident === "::")) {
/* It's a type application probably (will be verified later)
* In this case we actually *add* syntax here to differentiate type applications

2
parse.js

@ -640,4 +640,4 @@ module.exports = { parse : function(str) {
tokenize : tokenizer.tokenize
};
var istr = fs.readFileSync('/dev/stdin').toString();
console.log(parseFull(tokenizer.tokenize(istr)).map(pprint.pprint));
parseFull(tokenizer.tokenize(istr)).map(pprint.pprint);

9
tokenize.js

@ -392,14 +392,15 @@ var defop_pattern = ["defop", "integer", "constructor",
"left_paren", "identifier",
"identifier", "identifier", "right_paren"];
function checkPattern(x, i) {
return x === defop_pattern[i];
}
function tokenizeFull(input) {
var matchop;
var initialPass = tokenizeHelp(input, _.constant(false), true).reverse();
for (var i = 0; i < initialPass.length; i++) {
if (initialPass.slice(i, i+8).map(_.first).every(
function(x, i) {
return x === defop_pattern[i];
})) {
if (initialPass.slice(i, i+8).map(_.first).every(checkPattern)) {
rep.OPInfo[initialPass[i+5][1]] = [parseInt(initialPass[i+1][1], 10),
initialPass[i+2][1]];
}

Loading…
Cancel
Save