| Christopher Ross-Gill
Markup v0.2.0 -- http://ross-gill.com/page/HTML_and_Rebol
I've added the tree constructor per the HTML5 spec and added a few more standard error codes (with source positions). There's a few kinks--while table nesting seems to be working and for the most part misnested formatting is resolved properly, there are still failures on the odd test or two*.
It's all still a bit slow for my liking--the parser is set up near exactly the way the spec suggests which in no way works to Rebol's (or Red's) parsing strength--pretty sure that's ripe for optimization**. Also still not sure about my choice of linked lists for trees either--there's a real gain in fidelity (good for editing when the time comes), but I'm not convinced there's not an insurmountable hit on navigation speed***.
Am still working in a Red/Ren-C compatible way (has it's challenges but is great for rooting out bugs!). In Red you can just DO the raw github url. In Ren-C, you can: import <markup>
LOAD-HTML will return a document node from a given string, MARKUP-AS-BLOCK will convert that into a more familiar block hierarchy. If you get an actual Rebol/Red error, let me know--shouldn't happen.
*I feel as if I've read the 'Adoption Agency' algorithm 30 times over and still don't understand how it's supposed to work
**my only reservation here is while it does slow things down, it would work well with an incremental byte stream, say from a network source, where that might not be as noticeable
***if anyone has any thoughts on the efficacy of linked lists, would be interested to hear--have two versions: one with maps (no key/value clashes) and one with blocks (does seem faster)