mobiusklein opened a new issue, #254:
URL: https://github.com/apache/arrow-dotnet/issues/254

   ### Describe the enhancement requested
   
   I have been hand-writing a pile of generic kernels for numerical arrays and 
wanted to know what would be required to contribute them upstream.
   
   So far I have implementations for:
   - `public static Array Filter(Array array, BooleanArray mask)`
   - `public static BooleanArray Equal<T>(PrimitiveArray<T> lhs, T rhs) where 
T: struct, INumber<T>`
   - `public static BooleanArray Equal<T>(PrimitiveArray<T> lhs, 
PrimitiveArray<T> rhs) where T: struct, INumber<T>`
   - `public static Array Take(Array array, IList<int> indices)`
   - `public static Int64Array CastInt64<T>(PrimitiveArray<T> array) where T: 
struct, INumber<T>`
   - `public static Int32Array CastInt32<T>(PrimitiveArray<T> array) where T : 
struct, INumber<T>`
   - `public static FloatArray CastFloat<T>(PrimitiveArray<T> array) where T : 
struct, INumber<T>`
   - `public static DoubleArray CastDouble<T>(PrimitiveArray<T> array) where T 
: struct, INumber<T>`
   
   I also have a generic visitor for converting `Large*` arrays to their 
regular counterparts so that they may work with the other machinery in the 
library. I am less confident that is useful to others, or that it is truly 
correct.
   
   Is there a particular pattern you would want these to follow or is the 
notion not suitable for the .NET ecosystem? I am less familiar with .NET as an 
ecosystem.
   
   Thank you.


-- 
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