samth
2018-11-26 00:49:18

@mflatt one more question — how does the value of current-compile-machine-target relate to the value of use-compiled-file-paths? I assume that machine-independent compiled code should go in a different place than machine-dependent zo files, but how is that arranged?


samth
2018-11-26 04:01:29

Related to the above, I see that when run with -M, racket (including racketcs) doesn’t change use-compiled-file-paths — this seems surprising at least for RacketCS.


samth
2018-11-26 04:04:32

Unrelated to the above, on pycket I still see exactly one call to compile-linklet, with the name 'module, when loading racket/base with fully-built zo files. Adding logging to regular Racket suggests this doesn’t happen there, but I’m confused about how that could happen. The linklet is very simple, just (linklet ((.get-syntax-literal!) (.set-transformer!)) () (void) (void)). This log output indicates the instances being created just before and after: [1543205002.070564] making instance : "/home/samth/sw/plt/racket/collects/racket/private/member.rkt" [1543205002.070584] making instance : instance [1543205002.070624] making instance : body-instance [1543205002.070755] making instance : "/home/samth/sw/plt/racket/collects/racket/private/define-et-al.rk t" [1543205002.070771] making instance : instance [1543205002.071093] making instance : body-instance [1543205002.104487] compiling linklet : module (linklet ((.get-syntax-literal!) (.set-transformer!)) () (void) (void)) [1543205002.104726] making instance : data [1543205002.104739] making instance : decl [1543205002.104747] making instance : syntax-literal-data [1543205002.105805] making instance : "/home/samth/sw/plt/racket/collects/racket/private/qq-and-or.rkt" [1543205002.105831] making instance : instance [1543205002.105888] making instance : body-instance [1543205002.106607] making instance : "/home/samth/sw/plt/racket/collects/racket/private/cond.rkt" Any idea where this could be coming from (or suggestions about how I can figure that out myself)?


mflatt
2018-11-26 04:16:38

The intent of -M is to write to the place where “.zo” files normally go, and then a raco setup without -M will recompile them in place to native format.


mflatt
2018-11-26 04:19:56

I don’t immediately have a good idea about the mystery linklet – and my build is in a bad state at the moment, so it’s difficult to poke around