This. The article suggestion will make parsers need lookahead support instead of simple state machine.
Is "key1" array of ["value1", "key2"] ? or string "value1"? We can't now until we find ':'.
Is "key1" array of ["value1", "key2"] ? or string "value1"? We can't now until we find ':'.