That's basically `try_convert`, right (calling ObjectSpace.convert_type with raise_error=False). Can we use that? If it isn't exposed, it should be, so this becomes
````ruby
other = Array.try_convert(other)
return nil if other.nil?
```