Pattern pasted by Jubjub on Wed May 14 19:39:13 2014

   (let loop ((rand 2 5))
     (msg velocity ,(v2 (rand -1 1)))
     (continue-in walk-time 'wander)
     (loop (rand 2 5)))

Oh, the shame. pasted by Jubjub on Wed May 14 19:40:46 2014

   (let loop ((walk-time (rand 2 5)))
     (msg velocity ,(v2 (rand -1 1)))
     (continue-in walk-time 'wander)
     (loop (rand 2 5)))

simple approach added by certainty on Wed May 14 19:44:41 2014

(define (rand-loop x y proc)
  (let loop ((v (rand x y))
    (proc v)
    (loop (rand x y))))

(rand-loop 2 5 (lambda (v) 
                  (msg velocity ,(v2 (rand -1 1)))
                  (continue-in v 'wander)))