What did you do this week?
I continued the PR started in the previous week by adding more multimethods for array manipulation. The following multimethods were added:
Tiling arrays
tile
repeat
Adding and removing elements
delete
insert
append
resize
trim_zeros
Rearranging elements
flip
fliplr
flipud
reshape
roll
rot90
Most of the work was adding default implementations for the above multimethods which relied heavily on array slicing. Contrary to what I mentioned in my last blog post, not much time was dedicated to writing overriden_class
for other backends so I will try to compensate in the next weeks.
What is coming up next?
As described in my proposal's timeline I'll be starting a new PR that adds multimethods for mathematical functions. This will be the focus of this week's work as some of these multimethods are also needed by sangyx, another GSoC student working on uarray. He is working on the udiff library that uses uarray and unumpy for automatic differentiation. To avoid getting in his way I will try to finish this PR as soon as possible.
Did you get stuck anywhere?
There were times when I didn't know exactly how to implement a specific default but this was easily overcome with the help of my mentors who would point me in the right direction. Asking for help sooner rather than later has proven to be invaluable. Looking back I think there were no major blocks this week.