don't include trailing newline in comment
better parsing of algebraic data types