Dag Sverre Seljebotn wrote:
> Stefan Behnel wrote:
>> Dag Sverre Seljebotn wrote:
>>> Anyway, thanks for clarifying the terms. So the question turns into: Is
>>> it possible to add a *vector* type to Cython? Or is that pulling it too
>>> far? (Choice of syntax aside.)
>> I'm for having both. The vector type could become a subtype of an array
>> that overrides the numeric operations (although I wouldn't care too much if
>> that's too hard to implement).
>>
>> We discussed the templating syntax a while ago. Even if that isn't there
>> yet, that doesn't mean we can't use its syntax.
>>
>> from cython cimport Vector
>> cdef Vector[int] some_vector
>>
>> would be the same as the equivalent "int[:]" array, except for arithmetic.
>
> That answers most of my worries. I'll leave this to sink in for a few
> days; but I'll start brainstorming for shorter syntax alternatives which
> might make this discussion shorter :-)
>
> Here's some starting points you all won't like:
>
> int[:].cwise
> int.cwise[:]
Yes, you're right. :)
Honestly, what's so bad about making the vector type explicit? Even
Vector[int[:]]
or
Vector(int[:])
are better than a hard to read "cwise".
> Also consider that "array" is already a Python builtin doing much of
> what Stefan seems to be after, at least Python side.
Well, yes, except for storing pointers and structs.
> (BTW, this is how a 2D arrays look in Fortran, which is still a very
> dominant tool in numerics:
>
> real, dimension(:,:) :: arr
>
> So you can see where my inspiration with the [:] came from.)
I like the "int[:]" syntax. I just think that a vector should look
different in the code.
Stefan
_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev