Shubhamkar Ayare

Results 239 comments of Shubhamkar Ayare

> I tried coalton a year ago but wasn't sold because I found it weren't easy to do performance optimizations (inserting CL declarations), and macros can't make use of its...

I think it's also impossible to do away with metaclasses, particularly when it comes to the methods [here](https://github.com/digikar99/dense-arrays/blob/12bedd327e261535461759fb9e4ae14770dbac8a/src/protocol.lisp#L24). I want the behavior of `dense-array` to be "customizable". An alternative to...

The [array-trait](https://github.com/digikar99/dense-arrays/tree/array-trait) branch has the experimental code: - `abstract-arrays:array` and `dense-arrays:dense-array` are a trait. `dense-arrays:dense-array` has `abstract-arrays:array` as a dependency: this means `dense-arrays:dense-array` should be a subtype of `abstract-arrays:array`: https://github.com/digikar99/dense-arrays/blob/04b5fca39ae54233b7e543ccde907dc1344cb5cf/src/protocol.lisp#L89-L114...

Some more thoughts: The first part is about what to do about xarrays. The second about metaclasses and traits. ### 1. xarrays I identify being able to extend (dense-)numericals polymorphic-functions...

That's great news!

Try using `(optimize speed)`, something like ``` (locally (declare (optimize speed)) (numericals:+ 1.0 2.0)) ```

I can reproduce the issue. This does not even return a `(function ...)` type! ```lisp DENSE-NUMERICALS/BASIC-MATH/IMPL> (form-type `(lambda (x) (declare (type (simple-array double-float) x) (optimize speed)) (nu:subtract x x)) nil...

I just pushed a fix to [digikar99/cl-environments](https://github.com/digikar99/cl-environments) and also made a PR for `alex-gutev/cl-environments`. That seems to solve the issue! ```lisp DENSE-NUMERICALS/BASIC-MATH/IMPL> (form-type `(lambda (x) (declare (type (simple-array double-float) x)...

> 1. `nu:asarray 1.0` should return a rank-0 array. Currently it returns a rank-1 array with shape (1). This is inconsistent behavior with `dense-numericals:asarray` and should be fixed. It should...