(expand) works fine using basics like (list):
(defmodule Loop
(defmacro result [val]
(list 'set! 'loop-res (list 'Maybe.Just val)) ))
(expand (Loop.result 123))
=> (set! loop-res (Maybe.Just 123))
... but not when quasi-quoting is involved
(defmodule Loop
(defmacro result [val]
`(set! loop-res (Maybe.Just %val)) ))
(expand (Loop.result 123))
=> returns no output
Applies to Carp 0.5.0 release version