Moelf commented on PR #466:
URL: https://github.com/apache/arrow-julia/pull/466#issuecomment-1588493523

   > Tuple{Vararg} actually isn't a concrete type of any kind of value in 
Julia, so it doesn't really make sense to talk about what it translates to in 
the arrow format.
   
   I don't see how this follows, surely we can talk about how much 
information/promise a type makes, and see what's the most precise Arrow type 
composition we can map to. In this case, if all you see is a `Vararg{T}`, it's 
making the same amount of guarantee (as far as serialization to/from bytes is 
concerned) as `Vector{T}` no?
   
   ---
   
   >We could potentially try to switch to treating those as lists instead of 
fixed-size lists
   
   I guess we would error when people have a column of `Vector{Vararg{T}}` of 
varying length, that's fine, we can throw error and ask user to explicitly 
convert to `Vector`, somehow, which would be annoying if it's a field in 
struct. 
   
   For (a contrived) example:
   ```julia
   julia> col1 = [v"2.0-rc1.x", v"2.0-rc1.x.y"]
   2-element Vector{VersionNumber}:
    v"2.0.0-rc1.x"
    v"2.0.0-rc1.x.y"
   ```
   
   Arrow types certainly have enough flexibility to represent these.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to