Thanks for the prompt reply! > On Nov 17, 2019, at 11:15, Matthew Flatt <[email protected]> wrote: > > Making mutual references work is the job of info-in and info-out files. > Document A's info-out file is the info-in file for any document that > needs to reference document A. Yes, you have to run to a fixed point > where none of the info-out/info-in files change. That requires a fancy > `make` rule, indeed. :)
Yes, perhaps I’ll try to avoid the need for recursive references for now. :) I do have two related followup questions, though. First, how does `raco setup` know what the dependencies are in the first place, so it knows what it needs to rerender? I’ve noticed it seems to do things in at least two passes—“running” the documentation before “rendering” it—is that somehow involved? Second, I’d like to better understand how “tag prefixes” work, since they seem to be the mechanism by which tags from different documents are distinguished. What I don’t really understand is what the resolution logic actually is or where it happens. The documentation on tags says this: > The prefix is used for reference outside the part, including the use of tags > in the part’s tags field. Typically, a document’s main part has a tag prefix > that applies to the whole document; references to sections and defined terms > within the document from other documents must include the prefix, while > references within the same document omit the prefix. What part of the pipeline implements this prefix-sensitive lookup behavior? Is it the `resolve-get` family of functions, so I can just put things in the `tag-prefixes` field of a `part` during the collect phase and everything else will happen automatically? Or do I need to do something more myself? Also, I don’t completely understand the way the resolution works… is it possible for there to be some kind of “ambiguous match,” where two different tag definitions are equally-specific matches for a given reference? If so, what happens in that scenario? (And if not, why not?) -- 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 to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/3C4C998F-F21B-46A0-909B-00598ADF3CEE%40gmail.com.

