Merge pull request #377 from asarhaddon/fix-runtests-pre-eval
[jackhill/mal.git] / miniMAL / reader.json
index dafa691..b1de4d9 100644 (file)
@@ -24,7 +24,7 @@
       ["re-matches", "re", "strn", ["concat", "acc", "g1"]]]]]],
 
 ["def", "tokenize", ["fn", ["strn"],
-  ["let", ["re-str", ["`", "[\\s,]*(~@|[\\[\\]{}()'`~^@]|\"(?:\\\\.|[^\\\\\"])*\"|;.*|[^\\s\\[\\]{}('\"`,;)]*)"],
+  ["let", ["re-str", ["`", "[\\s,]*(~@|[\\[\\]{}()'`~^@]|\"(?:\\\\.|[^\\\\\"])*\"?|;.*|[^\\s\\[\\]{}('\"`,;)]*)"],
            "re", ["RegExp", "re-str", ["`", "g"]]],
     [".",
       ["re-matches", "re", "strn", ["`", []]],
     ["if", [".", "token", ["`", "match"], ["RegExp", ["`", "^-?[0-9]+$"]]],
       ["parseInt", "token", 10],
     ["if", ["=", ["`", "\""], ["get", "token", 0]],
-      [".",
-        ["slice", "token", 1, ["-", ["count", "token"], 1]],
-        ["`", "replace"], ["RegExp", ["`", "\\\\(.)"], ["`", "g"]],
-                          ["fn", ["_", "c"],
-                            ["if", ["=", "c", ["`", "n"]],
-                              ["`", "\n"],
-                              "c"]]],
+      ["if", ["=", ["`", "\""], ["get", "token", ["-", ["count", "token"], 1]]],
+        [".",
+          ["slice", "token", 1, ["-", ["count", "token"], 1]],
+          ["`", "replace"], ["RegExp", ["`", "\\\\(.)"], ["`", "g"]],
+                            ["fn", ["_", "c"],
+                              ["if", ["=", "c", ["`", "n"]],
+                                ["`", "\n"],
+                                "c"]]],
+        ["throw", ["`", "expected '\"', got EOF"]]],
     ["if", ["=", ["`", ":"], ["get", "token", 0]],
       ["keyword", ["slice", "token", 1]],
     ["if", ["=", ["`", "nil"], "token"],