Next: iklib expander fluids, Previous: iklib expander local import, Up: iklib expander [Index]
Vicare allows the export syntax to appear at the top
level of a library among the definitions, not only as third form of a
library form.
Export the specified bidings from the current library or module. When
export appears at the top level of a library: it exports the
specified bindings from the library. When export appears in the
body of a module: it exports the specified bindings from the module
(not from the enclosing library).
Here is an example of library exporting a binding with a export
at the end:
;;; file "alpha.sls"
(library (alpha)
(export red)
(import (vicare))
(define (blue)
'blue)
(define (red)
'red)
(export blue))
;;; file "program.sps"
(import (vicare)
(alpha))
(pretty-print (red) (current-error-port))
(pretty-print (blue) (current-error-port))
Here is an example of module exporting a binding with export:
(import (vicare)) (module (green) (define (green) 'green) (define (yellow) 'yellow) (export yellow)) (list (green) (yellow)) ⇒ (green yellow)