@@ -1,38 +1,39 @@
1Elm.Native.Random = {};
1Elm.Native.Random = {};
2Elm.Native.Random.make = function(elm) {
2Elm.Native.Random.make = function(elm) {
4− elm.Native = elm.Native || {};
4+ elm.Native = elm.Native || {};
5− elm.Native.Random = elm.Native.Random || {};
5+ elm.Native.Random = elm.Native.Random || {};
6− if (elm.Native.Random.values) return elm.Native.Random.values;
6+ if (elm.Native.Random.values) return elm.Native.Random.values;
8− var Signal = Elm.Signal.make(elm);
8+ var Signal = Elm.Signal.make(elm);
9− var List = Elm.Native.List.make(elm);
9+ var List = Elm.Native.List.make(elm);
11− function range(min, max, signal) {
11+ function range(min, max, signal) {
12− function f(x) { return Math.floor(Math.random() * (max-min+1)) + min; }
12+ function f(x) { return Math.floor(Math.random() * (max-min+1)) + min; }
13− return A2( Signal.lift, f, signal );
13+ return A2( Signal.lift, f, signal );
16− function flt(signal) {
16+ function float_(signal) {
17− function f(x) { return Math.random(); }
17+ function f(x) { return Math.random(); }
18− return A2( Signal.lift, f, signal );
18+ return A2( Signal.lift, f, signal );
21− function flts(signal) {
22− function f(x) {
21+ function floatList(signal) {
23+ if (n < 0) return List.Nil;
23− var arr = new Array(Math.max(0,x));
24+ var arr = new Array(n);
24− for (var i = 0; i < x; i++) {
25+ for (var i = n; i--; ) {
25− arr[i] = Math.random();
26+ arr[i] = Math.random();
27− return List.fromArray(arr);
28+ return List.fromArray(arr);
30+ return A2( Signal.lift, f, signal );
29− return A2( Signal.lift, f, signal );
32− return elm.Native.Random.values = {
33+ return elm.Native.Random.values = {
33− range: F3(range),
34+ range: F3(range),
34− flt: flt,
35+ float_: float_,
35− floatList: flts
36+ floatList: floatList