would it make sense for raco make
to check that dependencies exist?
right now if a.rkt
depends on b.rkt
, and I compile them, then I delete b.rkt
, I can still compile and run a.rkt
@ben certainly seems reasonable for me to have a make
check dependencies. :slightly_smiling_face:
@ben that’s intentional
You don’t need to have the source file if you have the zo
@samth does that mean the .zo satisfies the dependency just the same as b.rkt then? And so the behavior does check dependencies?
Yes
@pknight24 has joined the channel
okay then, I’ll try adding a flag to raco make
@ben what exactly would the flag do in that case?
well I’m hoping raco make file.rkt
has a list of things file.rkt
depends on
and things in that list can be mapped to filesystem locations
then the flag would assert that they all exist
in my case I just had (require "file.rkt")
and I’d renamed "file.rkt"
to something else
I was reading under the Racket functional data structures section in the docs, and I found a mention of vlists
and I noticed the examples used the function name list
, as opposed to something like vlist
Is it the case that Racket secretly implements list
as vlists or something?
@slack1 no, the pfds/vlist
module merely uses the same name
They’re two different list
functions
So requiring that module will overwrite list
?
Yes, assuming list
was imported from the current language (which happens when you use #lang racket
or #lang racket/base
)
if you try to require
two modules that define the same name you get a syntax error
but you can require
a module that defines the same name as a name defined by the #lang
used
oh I see hmm, that’s quite aggressive to take the same name
yes, it’s rather atypical for racket modules to do that
Using vlist
in all the function names would have been better, probably
one last note: if you want to use two different modules that both provide the same name you can use rename-in
and prefix-in
to change the names of stuff imported from the module, letting you get around the name conflict
Oh I see, so it’s not tooo bad
thanks for the help
happy to help :)