mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-18 21:29:19 +02:00
23 lines
689 B
Scheme
23 lines
689 B
Scheme
(define-library (srfi 145)
|
|
(export assume)
|
|
(import (scheme base))
|
|
(cond-expand
|
|
((or elide-assumptions
|
|
(and (not assumptions)
|
|
(not debug)))
|
|
(begin
|
|
(define-syntax assume
|
|
(syntax-rules ()
|
|
((assume expression objs ...)
|
|
expression)
|
|
((assume)
|
|
(syntax-error "assume requires an expression"))))))
|
|
(else
|
|
(begin
|
|
(define-syntax assume
|
|
(syntax-rules ()
|
|
((assume expression objs ...)
|
|
(or expression
|
|
(error "invalid assumption" 'expression objs ...)))
|
|
((assume)
|
|
(syntax-error "assume requires an expression"))))))))
|