Question about #lang reader


i try to add support for r6rs in my SRFI-105 reader, used this way:

#lang reader "../src/SRFI-105.rkt"

it used to return a module like this, reading an input file stream :

(define (literal-read-syntax src in)
  (define lst-code (process-input-code-tail-rec in))

  (module aschemeplusprogram racket ,@lst-code))

i'm facing the problem that in Racket r6rs support is declared by a #!r6rs statement at the top of a file or by something that start with (module ar6rsprogram r6rs .....
which is a bit strange as module in r6rs are declared with library and anyway #!r6rs is non standart in scheme.

I do not intend here to change Racket,even if i though the #lang language statements are causing those sort of problem as beingnon standart and it is better to use only some parenthesis expression such as (module foo racket code goes here... form .

So now i must have 2 statement in my produced code:

(module aschemeplusprogram racket ,@lst-code)

but i do not know how to make the #lang reader accept not only 1 statements but 2 ?



it does not seem to be possible .

i find a solution to that, insert a r6rs library in a racket's module:

(module a-r6rs-program r6rs
  (library (another-r6rs-program)
           (export foo)
            (prefix (srfi :43) s43:)  

           (define (foo) 7)
           (display "hello")


it works:

Welcome to DrRacket, version 8.11 [cs].
Language: Determine language from source; memory limit: 8192 MB.
> (foo)

but it is not optimal to use 2 modules/library definition for the same single goal.