I'm not clear on why you're using `require-input-port` here instead of
`dyanmic-require` with <myprogram>'s path.
Originally, I needed it to prepend "#lang <mylang>" to the source because I did 
not have it in the file.
That requirement is not so strict now and I will be able to lift it if it is 
critical for performance.

I just tried to check what I get with (dynamic-require <myprogram> #f) instead 
of require-input-port.
In turns out that I get a "hash-ref: no value found for key" error originating from 
<mylang> implementation.
It indicates that something went not as is was supposed to go in the dependent 
modules loading.
There is a certain module (I will call it "functions") that, when loaded, fills up the hash table in another 
module ("functions-table"), and this hash table is being used by the language implementation. Of course, the 
language implementation does (require) "functions-table" and then "functions".
Something went wrong with that scheme when I used the (dynamic-require 
<myprogram> #f) approach.
It never went that way when I used (require-input-port) or "racket <myprogram>".
Should I provide more details? Does the dynamic-require vs require-input-port 
issue matters for performance?

  Does the port `p` contain
the source text for <myprogram>, or does it contain the bytecode from
the ".zo" file created by `raco make <myprogram>?
In this dedicated test, just the source text of <myprogram> and nothing else.

Best regards,


You received this message because you are subscribed to the Google Groups "Racket 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
For more options, visit

Reply via email to