drop support for rational literal
no need char conversion
support exponential literal