timotimo wonders what the API for an ndarray-view repr should look like 19:48
and what kinds of cases it should support
like, do we support transponation? do we support skipping lines in some dimension? 19:49
timotimo i suppose slicing a single 1-width slice on any dimension is obvious 19:50
how about cutting a rectangular region across some dimensions?
i'd imagine if we had the same thing numpypy has, it'd be all you could want 19:51
i seem to recall it has one triplet of values for every dimension the view has
how much to increase the address by when you +1 along the dimension, how much to increase it by when you skip over the dimension, and ... something else?! 19:52
timotimo is closing in on the code i'm looking for 20:07
this triplet is named "strides"
it also has a "backstrides" thing
timotimo thinking more about it, clearly having one "stride" per dimension ought to be enough for common cases ... 20:45
i'm not sure how reversing dimensions works 20:46
like, traverse the items in backwards direction 20:50
timotimo maybe by having an appropriate "start" point 20:57
FROGGS $ ./perl6-m -e 'say $*KERNEL' 21:48
yoleaux2 11 Nov 2016 20:46Z <MasterDuke> FROGGS: sorry, another renaming thing, 'add_comp_files_to_directives' should be 'add_comp_lines_to_directives'
FROGGS sunos (11.3)
FROGGS $ ./perl6-m -e 'say $*KERNEL' 21:51
sunos (11.3)
# to be clear
geekosaur yay 21:52
FROGGS needs two patches to moarvm though 21:53
nqp passes its tests, and rakudo segfaults very late in ./perl6-gdb-m tools/build/install-core-dist.pl /export/home/froggs/nqp/install/share/perl6 21:54
timotimo ooh 21:56
FROGGS (in interp.c:3461, op read_dir)
FROGGS huh 21:57
read dir seam to work ok twice, and segfaults for the third time 21:58
timotimo at first i thought i could overload set_dimensions to also handle strides, but that's dumb 23:57
but strides is really a view-only thing, so i don't really want to expose that to everything that has positional functionality
but it definitely doesn't fit into compose, because we're likely going to have different strides per object, just like we have different size-per-dimension values per object 23:58