Hello there!

I would love it if you could drop in a comment about this code. What can I change to make a better API and/or more accurate implementation of the mathematical type? I uploaded it as a gist.

Thank you for your time!

Hello there!

I would love it if you could drop in a comment about this code. What can I change to make a better API and/or more accurate implementation of the mathematical type? I uploaded it as a gist.

Thank you for your time!

`scalar / vector`

division doesn’t make much sense in terms of (standard) mathematical notation. Maybe just skip that part, of if you need the functionality of element-wise multiplicative inversion for some other use, consider using a descriptively named method instead.

To be clear, the other division, `vector / scalar`

, *is* reasonable in my opinion.

3 Likes

Thank you for your input! I made a revision to my code to fix that.

Given that this is a small `Copy`

type, it would seem reasonable to me to make the non-`self`

argument of `fn dot`

a by-value argument – instead of by-reference – too. I see you already changed the `&self`

itself to `self`

, anyways.

2 Likes

I have clippy to thank for that one!

In your opinion, would it make sense to continue passing `self`

by value when I make types with more dimensions? Would it impact the performance in any significant way?