CODE: add racket implementation