Parsing null terminated strings in a binary.
Raimo Niskanen
raimo@REDACTED
Fri Jan 14 11:15:23 CET 2005
Then it might be worth the effort to hipe compile the lists and string
modules, if it is possible. Instead of hoping lists:sublist to become
a BIF.
By the way, lists:member/2, lists:reverse/2, lists:keymember/3,
lists:append/2 (++), lists:subtract/2 (--) and lists:keysearch/3
(and also erlang:length/1, erlang:hd/1, erlang:tl/1
as well as erlang:list_to_tuple/1 and erlang:tuple_to_list/1 and such)
are BIFs, if you did not already know that.
james.hague@REDACTED (James Hague) writes:
> Raimo Niskanen wrote
>
> >This will not build any sub-binaries until the zero is found.
>
> As an aside, I have become enamored of this style of programming even
> for processing lists. For example, consider the problem of parsing a
> number out of a string. I count the number of elements that are ASCII
> digits, then when I don't find any more digits I grab all of them at
> once with lists:sublist. This hides all of the list building inside
> lists:sublist. I won't argue that this is faster, because it is
> certainly somewhat slower than building the list as you go (I did some
> timings). But it opens the door for a faster implementation of
> lists:sublist, possibly as a BIF, which somehow pleases me even though
> I don't ever expect it to happen.
>
> James
--
/ Raimo Niskanen, Erlang/OTP, Ericsson AB
More information about the erlang-questions
mailing list