Actually, this makes sense after all: The default value determines the expected type, which is required for proper deserialization (e.g. `"false"` vs. `false`). Thus `[""]` means that we're dealing with a list of strings - `[]` would not provide any clue as to the type of list elements.

Granted, this is a bit awkward, but we didn't want to introduce elaborate type annotations at the time.