1. What support have you for Unicode? This is Lua's Achilles heel.
2. There's an issue with json.stringify - the script
t={11, ["1"]=11}
return json.stringify(t)
should not return {"1": 11, "1": 11}
since this maps a structure whose semantics has two elements onto one whose semantics has one. json.parse cannot be an inverse to this function.