in reply to Optimization for readability and speed (code)
If you really want to avoid REs and make C programmers comfortable, then I would point you at unpack and substr. Then you at least get some higher order constructs to compensate you for not writing in C.
Oh, a question. I don't know what atomize is supposed to do, but the first molecule in your molecules list is unlikely to be exactly what you planned on...
But still I would structure this by somewhere documenting the format, put in an RE, and somewhere (possibly before the RE, possibly in general documentation) put a pointer at japhy's module for taking an RE apart and explaining it in plain English.