That is a good idea for defensive coding. I guess I don't have any battle scars from that sort of bug, so my leaning is towards the prettier no-paren version. Getting an iterable where I expected a scalar would usually cause problems elsewhere too.

Since we're writing a library for wide consumption, the defensive version is probably wise. In this case, `(key) == key` since it doesn't have a trailing comma.