@@ -7,7 +7,7 @@ Elm.Native.Json.make = function(elm) {
77
88 var Maybe = Elm.Maybe.make(elm);
99 var Dict = Elm.Dict.make(elm);
10− var List = Elm.List.make(elm);
10+ var List = Elm.Native.List.make(elm);
1111 var Utils = Elm.Native.Utils.make(elm);
1212
1313 function toJS(v) {
@@ -45,12 +45,24 @@ Elm.Native.Json.make = function(elm) {
4545 case 'object' :
4646 if (v === null) return { ctor:"Null" };
4747 if (v instanceof Array) {
48− for (var i = v.length; i--; ) { v[i] = fromJS(v[i]); }
49− return { ctor:"Array", _0: List.fromArray(v) };
48+ for (var i = v.length; i--; ) {
49+ v[i] = fromJS(v[i]);
50+ }
51+ return {
52+ ctor:"Array",
53+ _0: List.fromArray(array)
54+ };
5055 }
5156 var array = [];
52− for (var k in v) array.push(Utils.Tuple2(k, fromJS(v[k])));
53− return { ctor:"Object", _0: Dict.fromList(List.fromArray(array)) };
57+ for (var key in v) {
58+ var value = fromJS(v[key]);
59+ array.push(Utils.Tuple2(key, value));
60+ }
61+ var list = List.fromArray(array);
62+ return {
63+ ctor:"Object",
64+ _0: Dict.fromList(list)
65+ };
5466 }
5567 }
5668