Hi all, Groovy parses negative numbers as unary expression. For example, `-1` is parsed as `-``1`, older parser parses negative numbers twice, so does the Parrot parser for the identical output...
I suggest to parse negative numbers as REAL numbers instead of unary expression[1]. It will break the edge case, for example: `-1(a, b, c)` is parsed as `-(1.call(a, b, c))`, after refining, `-1(a, b, c)` is parsed as `-1.call(a, b, c)`. Any thoughts? If no PMC votes -1 on this GEP in 72 hours, I will work on it. Cheers, Daniel.Sun [1] https://github.com/danielsun1106/groovy-parser/blob/master/src/main/antlr/GroovyParser.g4#L796 -- Sent from: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html