cleanup
authorMart Lubbers <mart@martlubbers.net>
Wed, 6 Mar 2019 12:12:23 +0000 (13:12 +0100)
committerMart Lubbers <mart@martlubbers.net>
Wed, 6 Mar 2019 12:12:23 +0000 (13:12 +0100)
check.icl
parse.icl

index 68d258a..8a4ea5c 100644 (file)
--- a/check.icl
+++ b/check.icl
@@ -26,6 +26,7 @@ check fs
                ([Function _ _ _], _) = Left ["Start cannot have arguments"]
 
 instance toString Scheme where
+       toString (Forall [] t) = toString t
        toString (Forall as t) = concat ["A.", join " " (map toString as), ": ", toString t]
 
 instance toString Type where
index 0c30e8c..a2c3103 100644 (file)
--- a/parse.icl
+++ b/parse.icl
@@ -26,6 +26,10 @@ instance toString Token where toString t = printToString t
 
 lex :: [Char] -> Either [String] [Token]
 lex [] = pure []
+lex ['//\n':ts] = lex ts
+lex ['//',t:ts] = lex ['/','/':ts]
+lex ['/**/':ts] = lex $ dropWhile ((<>)'\n') ts
+lex ['/*',t:ts] = lex ['/','*':ts]
 lex [';':ts] = TTSemiColon <:> lex ts
 lex [')':ts] = TTBrackClose <:> lex ts
 lex ['(':ts] = TTBrackOpen <:> lex ts