
On 2 October 2016 at 14:34, David Feuer
Instead of scanning first (in lexing) to find the end of the number and then scanning the string again to calculate the number, start to calculate once the first digit appears.
As in multiply the current sum by 10 before adding each new digit?
On Oct 1, 2016 10:07 PM, "wren romano"
wrote: On Mon, Sep 12, 2016 at 11:03 AM, David Feuer
wrote: By the way, I believe we should be able to read numbers more efficiently by parsing them directly instead of lexing first. We have to deal with parentheses, white space, and signs uniformly for all number types. Then specialized foldl'-style code *should* be able to parse integral and fractional numbers faster than any lex-first scheme.
I follow the part about parentheses and negations, but I'm not sure I get the rest of what you mean. E.g., I'm not sure how any parser could be faster than what bytestring-lexing does for Fractional and Integral types (ignoring the unoptimized hex and octal functions). What am I missing?
-- Live well, ~wren
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
-- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com http://IvanMiljenovic.wordpress.com