Then nothing. Macros work.
Silly example:
COALTON-USER> (defmacro rpn (x y op) `(,op ,x ,y)) RPN COALTON-USER> (coalton-toplevel (define (double x) (rpn 2 x *))) ;; DOUBLE :: ∀ A. NUM A ⇒ (A → A) COALTON-USER> (coalton (double 3.0)) 6.0