Learn Physics with Functional Programming by Scott Walck