;; ------------------------------------------------------------------------ ;; | FILE : assert-macro.rkt | ;; | AUTHOR : Eugene Wallingford | ;; | CREATION DATE : March 22, 2017 | ;; | DESCRIPTION : An simple Racket macro, using define-syntax-rule | ;; | to simulate a Lisp-style macro. | ;; ------------------------------------------------------------------------ #lang racket (define-syntax-rule (assert expr) (unless expr (error 'assert "assertion failed: ~s" (quote expr)))) ; (define lst '(1)) ; (assert (>= (length lst) 2))