[racket] Evaluating code written in non-SEXP language
At Fri, 13 Sep 2013 17:54:47 +0400, Dmitry Pavlov wrote:
> Matthew,
>
> > Assuming that this module is `slon/lang/reader`, does it help to add
> >
> > ++lib slon/lang/reader
> >
> > to the `raco exe` command, along with the `++lib` argument that you
> > have already?
>
> Unfortunately, no. Nothing has changed:
>
> $ raco exe ++lib slon/slon-language ++lib slon/lang/reader slon-main.rkt
> $ ./slon-main
> standard-module-name-resolver: collection not found
> collection: "slon"
> in collection directories:
> context...:
> standard-module-name-resolver
> /home/dpavlov/era/slon/slon-main.rkt:19:0: slon-main
> #%mzc:slon-main: [running body]
> loop
I think the problem may be that "#lang" is triggering a search for
`slon/main` before falling back to `slon/lang/reader`, and since no
`slon/main` is embedded, the attempt looks for a "slon" collection. The
"#lang" search continues as it should when an "slon" collection is
found and no "main.rkt" exists, but it doesn't fail correctly when an
"slon" collection is missing.
So, one more experiment: If you make a dummy "slon/main.rkt" and also
add it with `++lib`, does it change anything?