@@ -32,6 +32,42 @@ Elm.Prelude = function() {
34 var logBase=function(b){return function(x){return Math.log(x)/Math.log(b);};};
34 var logBase=function(b){return function(x){return Math.log(x)/Math.log(b);};};
36+ function readInt(str) {
37+ var s = JavaScript.castStringToJSString(str);
39+ if (len === 0) { return Nothing; }
42+ if (len === 1) { return Nothing; }
45+ for (var i = start; i < len; ++i) {
46+ if (!Char.isDigit(s[i])) { return Nothing; }
48+ return Just(parseInt(s));
51+ function readFloat(str) {
52+ var s = JavaScript.castStringToJSString(str);
54+ if (len === 0) { return Nothing; }
57+ if (len === 1) { return Nothing; }
61+ for (var i = start; i < len; ++i) {
62+ if (Char.isDigit(s[i])) { continue; }
65+ if (dotCount <= 1) { continue; }
69+ return Just(parseFloat(s));
36 return {eq : Value.eq,
72 return {eq : Value.eq,
37 id : function(x) { return x; },
73 id : function(x) { return x; },
@@ -51,6 +87,8 @@ Elm.Prelude = function() {
51 floor : function(n) { return Math.floor(n); },
87 floor : function(n) { return Math.floor(n); },
52 ceiling : function(n) { return Math.ceil(n); },
88 ceiling : function(n) { return Math.ceil(n); },
53 truncate : function(n) { return ~~n; },
89 truncate : function(n) { return ~~n; },
91+ readFloat : readFloat,
54 sqrt : Math.sqrt,
92 sqrt : Math.sqrt,
55 abs : Math.abs,
93 abs : Math.abs,
56 pi : Math.PI,
94 pi : Math.PI,