@@ -1,6 +1,6 @@
1module Generate.JavaScript.BuiltIn
1module Generate.JavaScript.BuiltIn
2 ( character, string
2 ( character, string
4 , recordUpdate
4 , recordUpdate
6 , effect, outgoingPort, incomingPort
6 , effect, outgoingPort, incomingPort
@@ -47,7 +47,21 @@ string str =
48list :: [JS.Expression ()] -> JS.Expression ()
48list :: [JS.Expression ()] -> JS.Expression ()
49list elements =
49list elements =
50− nativeList "fromArray" [ JS.ArrayLit () elements ]
50+ case elements of
52+ JS.ObjectLit () [ "ctor" ==> JS.StringLit () "[]" ]
55+ cons front (list back)
58+cons :: JS.Expression () -> JS.Expression () -> JS.Expression ()
61+ [ "ctor" ==> JS.StringLit () "::"