Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Array of custom types/structs? #393

Open
datnamer opened this issue Oct 18, 2015 · 5 comments
Open

Array of custom types/structs? #393

datnamer opened this issue Oct 18, 2015 · 5 comments

Comments

@datnamer
Copy link

Lets say I define a custom type with Cython or Numba's upcoming JIT class capability. Can I fill a vector or array with these types and operate on them quickly, if they support the right operations? (not an object array, but having the type system recognize them).

@izaid
Copy link
Member

izaid commented Oct 18, 2015

At some point (hopefully soon), yes, and DyND itself has it's own (currently limited) custom type support.

@datnamer
Copy link
Author

Great, thanks! I'm very much looking forward to that capability to use in my research.

@izaid
Copy link
Member

izaid commented Oct 18, 2015

What do you work on? I'd be keen to know how DyND (and other Continuum projects) would help you.

@datnamer
Copy link
Author

Using individual based models to explore causal mechanisms, in concert with traditional statistical/ml tools.

The other tool that would help is robust custom type support in numba.

By the way, have you seen Julia's recent tribulations and solution to type instability introduced by certain representations of missingness?

Might help inform Dynd design decisions.But this may require a total rewrite of missing data handling, unless Dynd's static typing can help?

@datnamer
Copy link
Author

@izaid @insertinterestingnamehere I have some questions for you, when you get a chance please:

In Julia, Heterogenous arrays provide for very slow operations because of type instability. I think they are typed as " Array{Any}".

I noticed that DyND (or datashape) has means of expressing more type information when all array elements are not the same.

What benefits this feature of dynd s provide other than a productivity boost to the programmer form knowing more metadata/type info about the data structure? Can the compiler use it to provide more efficient code over complex heterogenous datastructures, or do we need to convert to singly typed arrays to get fast code? How about dispatch?

Edit:

One more Q: does Dynd have dependent typing?

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants