Hello Guile Users!

Due to https://lists.gnu.org/archive/html/guile-user/2023-06/msg00020.html I am currently relying on `define-module', instead of `library'. However, I have not found a way to do the `(import (except (something) excluded-binding ...))' thing. So I have imports looking like the following example:

~~~~
(define-module (encode)
  #:use-module (rnrs base)
  #:use-module ((guile)
                #:select (lambda* λ))

  ;; SRFI 1: list procedures
  #:use-module ((srfi srfi-1)
                #:select (drop take first second third))

  ;; and more stuff here ...
  )
~~~~

However, this results in warnings when loading (load "filename.scm") the module, such as:

~~~~
WARNING: (encode): `map' imported from both (rnrs base) and (srfi srfi-1)
~~~~

What can I do to use everything from rnrs base, except where things clash and avoid the warnings? Is there a way with `define-module' to import everything except something specific?

Currently, it seems to me that `define-module' is more flexible, when it comes to re-exporting things, but `library' more flexible when importing things.

Best regards,
Zelphir

--
repositories:https://notabug.org/ZelphirKaltstahl

Reply via email to