<div>The new version of erlsom (released a couple of days ago on sourceforge) can parse input in chunks, one chunk at a time. That way the problem with the memory footprint can be solved. </div>
<div>Files of arbitrary size or a stream of data can be parsed.</div>
<div> </div>
<div>The approach is similar to the approach that xmerl uses, with a 'fetch' hook, as Ulf calls it. </div>
<div> </div>
<div>An example how to do this for big files is included with the erlsom distribution. It should be fairly straightforward (even for UTF-8 or UTF-16 encoded data).</div>
<div> </div>
<div>Regards,</div>
<div>Willem<br>    <br></div>
<div class="gmail_quote">On Nov 23, 2007 6:09 PM, Joel Reymont <<a href="mailto:joelr1@gmail.com">joelr1@gmail.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<div class="Ih2E3d"><br>On Nov 23, 2007, at 4:44 PM, Willem de Jong wrote:<br><br>> Why do you want a parser that works on binaries?<br><br><br></div>To minimize the memory footprint of an application, for example.<br>
ejabberd was a huge memory hog a year and a half ago since XML<br>binaries received from the socket were converted to lists for<br>processing. I was an even bigger memory hog on a x64 system for<br>obvious reasons. I noticed that even then they were using an expat
<br>driver that could operate on binaries so they may have completed that<br>conversion now.<br><font color="#888888"><br><br>--<br><a href="http://wagerlabs.com/" target="_blank">http://wagerlabs.com</a><br><br><br><br><br>
<br></font></blockquote></div><br>