> pp.print(ast,{hide_hash=true,metalua_tag=true})
{ `Fornum{ `Id "i", `Number "1", `Number "10", { `Call{ `Id "print", `Id "i" } } } }
Even if your goal is to have fun with LPeg, I believe it's wise to stick with Metalua's AST definition, unless you've got a good reason: there are many fixed mistakes in it, which could avoid being repeated :)