Thank you to everyone for the answers!
I was expecting to get a different output from the code, and I needed to write both functions makeCacheMatrix() and cacheSolve() to make it work. In addition, cacheSolve() cannot use atomic vectors so you need to use a function as an argument, which is very confusing:
> cacheSolve(makeCacheMatrix(yourmatrix))
I was able to make it work after sleeping, some more googling and GitHub.
The output I was getting from makeCacheMatrix() is just letting me know that the functions and values are being stored in the environment for their use later by cacheSolve().
As SamR commented, I think is a very confusing exercise.