When geiser wants to evaluate a buffer, it wraps the contents in a (begin) and sends the contents to the interpreter.
Naturally, a buffer may have (import)s in it, and chibi doesn't err, but also deals with them in the way I don't understand. At least the new bindings are not available for the expressions following an (import).
Is this a correct behaviour or a mistake?
If this is correct, why does geiser do so? Do other schemes generally permit this?