a lightweight parser combinators library in python