use syntax-parameters instead of expanding to let bindings
rename 'with-monad:' to 'with-monad'