Краткий ответ: не используйте r5rs; просто используйте родной язык. В текущих версиях DrRacket этот язык называется «ракеткой». Вот программа, которая использует коробки:
#lang racket
(define b (box 234))
(set-box! b 333)
(unbox b)
FWIW: ответ Грега более чисто функциональный, чем мой, но было бы ошибкой полагать, что изменяемые структуры недоступны в DrRacket (ур. DrScheme).
Наконец, наконец, вы неправильно используете термин «звонок по ссылке». Коробки - это просто изменяемые структуры, и язык вызовов по значению (такой как racket, r5rs, java и т. Д.) Может изменять эти структуры очень хорошо.