> [I]f one is wanting to learn R
A useful practice, in my experience, is to implement R code samples in some other language, like C/D. Implementing lower level math functions for oneself can also be fun instead of relying on a library, depending on one's ultimate goals/interests.