You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Krisztian Szucs (JIRA)" <ji...@apache.org> on 2018/04/28 18:32:00 UTC

[jira] [Commented] (ARROW-2521) [Rust] Review Array design before first release

    [ https://issues.apache.org/jira/browse/ARROW-2521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16457742#comment-16457742 ] 

Krisztian Szucs commented on ARROW-2521:
----------------------------------------

Just took a quick look, I guess the main problem is the List is generic whereas other datatypes are enum variants. 
Have You considered to put the List variant in the ArrayData? Something like [this|https://github.com/kszucs/arrow/blob/enum/rust/src/e.rs#L66].

I'll take a more detailed look after this weekend (national holiday).



> [Rust] Review Array design before first release
> -----------------------------------------------
>
>                 Key: ARROW-2521
>                 URL: https://issues.apache.org/jira/browse/ARROW-2521
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: Rust
>            Reporter: Andy Grove
>            Assignee: Andy Grove
>            Priority: Major
>             Fix For: 0.10.0
>
>
> Early on, [~kszucs] and I worked on two different designs for how to represent Arrow arrays in Rust, each with their pros and cons.
> Krisztian started out with a generics approach e.g. Array<T> which was great until we tried to implement structs, which can contain mixed types so we ended up using enum to represent arrays, which was great until I got to the list types ... I don't think I can implement nested lists with this approach.
> I am reviewing this again now that I am more familiar with Arrow and also my Rust skills have improved greatly since I started working on all of this.
> I will be prototyping in a separate repo, and will update this Jira once I have something concrete to share, but I feel it is important to address this before the first official release of the Rust version. Also, if we are going to consider a refactor like this, it is better to do it now while the codebase is tiny.
>  
>  
>  
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)