(: scale-vector ((Vectorof Natural) -> (Vector of Natural)))
(define (scale-vector vec k)
(for/vector: : [Vectorof Natural] ([element vec])
(* k vec)))
But does it really matter that I'm using Naturals? I could replace Natural with any other numeric type that is closed under multiplication (Integer, Rational, Real, Complex) and this should still type check.
(In an earlier revision I said addition)