Hi Mike, Mike Gran writes: >>good choice. Basically, I want the user to be able to open a repl shell, >>but by default it should have *no* bindings except the ones I whitelisted. > Define a module in a file with the "#:pure" option so that it starts off empty. … > Using the real repl is probably a no-go, since it has meta-commands > like ",m" that would let the user ignore your whitelist. > > I didn't really test this, but it should be mostly correct. Sandboxed Evaluation may also be interesting for this: https://www.gnu.org/software/guile/manual/html_node/Sandboxed-Evaluation.html (to prevent users from blocking the process) If you want a long term view for the most powerful approach that preserves allow-listing, see Spritely Goblins: https://spritely.institute/files/docs/guile-goblins/latest/A-simple-greeter.html Best wishes, Arne -- Unpolitisch sein heißt politisch sein, ohne es zu merken. draketo.de