Wouldn't removing the isinstance check here allow removing that array special case? If it isn't a scalar, we just assume it has a `len` defined (if not, it is an error, if not the clearest I admit)?