Hi Paddy, On Fri, 10 Jan 2020 at 04:13, paddy horan <[email protected]> wrote:
> Hi All, > > This time last year there was a brief discussion on the usage of unsafe in > Rust (a user on github raised the issue and I created the JIRA). [1] > > So far we mostly avoid unsafe in the public API's. The thinking here is > that Arrow is a "development platform", i.e. lower level that most > libraries, and library builders will want to avoid any performance hit of > bounds checking, etc. > > This is not typical in the Rust community where unsafe is a clear signal > that care is needed. Although it might clutter the API a little more I > would be in favor of having safe and unsafe variants of methods as needed. > For instance, "value" for array access would be changed to "value" and > "value_unchecked" where the latter is unsafe and does not perform bounds > checks. > > We don't have a huge number of libraries building on top of Arrow in Rust > at the moment so it seems like a good time, before 1.0, to decide on this > to avoid breaking changes to the public API in post 1.0. > > Thoughts? > > Paddy > > [1] https://issues.apache.org/jira/browse/ARROW-3776?filter=12343557 > >
