Summary

Add unexport form for modules

Metadata

Description

An "unexport" form for modules would be useful. For example, this would only export the identifier "b":

 (module m1 *
   (import chicken scheme)
   (define a 1)
   (define b 2)
   (unexport a))

This idea came out of #1376 and associated discussions on the mailing list. This would be a counterpart to "export", used to adjust the export list of a module from within its body.

megane has posted a patch on chicken-hackers, but it will need to be updated to apply to chicken-5.

Changes and comments

[2023-11-06 23:33:44 UTC] felix changed milestone from someday to 6.0.0

[2023-11-11 12:27:09 UTC] felix changed status from new to closed

[2023-11-11 12:27:09 UTC] felix set resolution to wontfix

[2023-11-11 12:27:09 UTC] felix wrote:

I think I agree with sjamaan's comments regarding the proliferation of all sorts of export/unexporting tricks. I think we should stick to what exists or keep to writing standard R7RS library definitions.