Version: 4.2.2.1
8 Modules
8.1 Require and Provide
(require (planet cce/scheme:6:0/require-provide)) |
This module provides tools for managing the imports and exports of modules.
(require/provide module-path ...) |
Re-exports all bindings provided by each module-path. Equivalent to:
(require module-path ...) |
(provide (all-from-out module-path ...)) |
(quote-require require-spec ...) |
Produces the names exported by the require-specs as a list of symbols.
Example: |
> (quote-require scheme/bool scheme/function) |
(false true symbol=? false? boolean=? negate curryr curry const) |
(local-require require-spec ...) |
This form performs a require into a local definition context. It achieves this
by lifting a #%require form to the top level and introducing the
bindings locally with rename transformers. For many purposes this is the same
as a regular require; however, only bindings for the current phase are
made available, and all names are introduced as syntax bindings even if the
exported identifiers included value bindings.
(do-local-require rename require-spec ...) |
This form generalizes do-local-require to use an arbitrary macro
rename (of the same syntactic form as define-renamings) to
introduce local bindings.
(define-planet-package name package) |
Defines a shortcut name for importing modules from planet package
package. Subsequently, (name module) is equivalent to
(planet package/module) as a require path. For instance, to import the
text and web modules from this package:
(define-planet-package my-package cce/scheme) |
(require (my-package web) (my-package text)) |
The above require is equivalent to:
(require (planet cce/scheme/web) (planet cce/scheme/text))
(this-package-in path) |
This
require transformer
imports the file at path in the current planet package. For instance,
in this package (cce/scheme:6:0), writing:
... is equivalent to writing:
8.2 PLaneT Packages
(require (planet cce/scheme:6:0/planet)) |
This module provides tools relating to PLaneT packages. In addition to the binding described below, it provides define-planet-package and this-package-in from (planet cce/scheme:6:0/require-provide), and make-planet-path, syntax-source-planet-package, syntax-source-planet-package-owner, syntax-source-planet-package-name, syntax-source-planet-package-major, syntax-source-planet-package-minor, and syntax-source-planet-package-symbol from (planet cce/scheme:6:0/syntax).
Produces a symbol corresponding to a planet module path for the current
planet package, possibly with a ‹path› (from the grammar of
planet module specs) into the package. This is similar to
this-package-version and similar tools from
planet/util.