This makes writing generics a lot easier because we can safely iterate across objects, so things like factorize() and match() would just work correctly.
For example, currently BiocFrame iteration produces a dict, which is not hashable. (Incidentally, BiocFrame iteration also includes the row names in the tuple, and it probably doesn't need to, as the row names are optional.)
This makes writing generics a lot easier because we can safely iterate across objects, so things like
factorize()andmatch()would just work correctly.For example, currently BiocFrame iteration produces a dict, which is not hashable. (Incidentally, BiocFrame iteration also includes the row names in the tuple, and it probably doesn't need to, as the row names are optional.)