<p dir="ltr">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.</p>
<div class="gmail_extra"><br><div class="gmail_quote">On Oct 1, 2016 10:07 PM, "wren romano" <<a href="mailto:winterkoninkje@gmail.com">winterkoninkje@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Sep 12, 2016 at 11:03 AM, David Feuer <<a href="mailto:david.feuer@gmail.com">david.feuer@gmail.com</a>> wrote:<br>
> By the way, I believe we should be able to read numbers more efficiently by<br>
> parsing them directly instead of lexing first. We have to deal with<br>
> parentheses, white space, and signs uniformly for all number types. Then<br>
> specialized foldl'-style code *should* be able to parse integral and<br>
> fractional numbers faster than any lex-first scheme.<br>
<br>
I follow the part about parentheses and negations, but I'm not sure I<br>
get the rest of what you mean. E.g., I'm not sure how any parser could<br>
be faster than what bytestring-lexing does for Fractional and Integral<br>
types (ignoring the unoptimized hex and octal functions). What am I<br>
missing?<br>
<br>
--<br>
Live well,<br>
~wren<br>
</blockquote></div></div>