So.
I've spent the last few days doing a major reworking on RbYAML. I've
rewritten the parser completely, and changed some other stuff too. Right
now I'm in a profiling/optimization-cycle for the load-path, and it looks
pretty promising. Right now the loading is about 10-15% slower than the
JRuby racc-based parser, but I believe I can actually get ahead of it soon.
AND RbYAML actually does a few things that Syck nor JRuby-yaml can do.
One of the benefits of rewriting the parser is that the former one was a
recursive-descent LL(1), whereas the new one is hybrid table-driven LL(1),
with almost no use of stacks at all. And it's also in a generator format,
so that the higher levels can request events when needed, instead of
creating all events in one sweep and then keep them in memory. What this
means is that the memory requirements are fairly smalled, compared to
JRuby-yaml.
I will continue this work today and tomorrow, but as of right now I feel we
can integrate it with JRuby as soon as you guys like.
(Another benefit from the rewrite: RbYAML is completely modular, so we can
replace the Ruby scanner with a Java-based scanner, and probably get way
better performance this way, since the scanner is the most intense part of
RbYAML)
Regards
Ola Bini
-------------------------------------------------------
All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
_______________________________________________
Jruby-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jruby-devel