@@ -126,7 +126,9 @@ parseNameAndType :: TokenParser t -> TokenParser (String, t)
126parseNameAndType p = (,) <$> (indented *> (lname <|> stringLiteral) <* indented <* doubleColon) <*> p
126parseNameAndType p = (,) <$> (indented *> (lname <|> stringLiteral) <* indented <* doubleColon) <*> p
128parseRowEnding :: TokenParser Type
128parseRowEnding :: TokenParser Type
129−parseRowEnding = P.option REmpty (TypeVar <$> (indented *> pipe *> indented *> identifier))
129+parseRowEnding = P.option REmpty $ indented *> pipe *> indented *> P.choice (map P.try
131+ , TypeVar <$> identifier ])
131parseRow :: TokenParser Type
133parseRow :: TokenParser Type
132parseRow = (curry rowFromList <$> commaSep (parseNameAndType parsePolyType) <*> parseRowEnding) P.<?> "row"
134parseRow = (curry rowFromList <$> commaSep (parseNameAndType parsePolyType) <*> parseRowEnding) P.<?> "row"