user8370684
user8370684

Reputation:

How to tell what packages are "official" or a part of the standard Racket distribution?

How does one figure out whether a library is "standard" in a Racket distribution?

Looking at https://docs.racket-lang.org/, it would seem that lots of libraries are included with Racket, but it turns out that only the ones from package base are included (correct?), and it's not obvious from that page which is which. I didn't expect JSON would be in base, but it is. I would've expected threading to be in base, but it isn't. I was looking at SRFI/19 which seemed to not be included in standard Racket but it turns out I didn't have to download anything to get it. It's quite confusing.

Then, reading https://docs.racket-lang.org/guide/More_Libraries.html, it says:

The Racket distribution includes many additional libraries.

Does this mean that the Racket distribution also has third-party packages bundled? How do I know what packages are available out-of-box and which ones I have to download separately? How do I know which ones are "official" and which ones are community-contributed?

Upvotes: 5

Views: 79

Answers (1)

Alex Knauth
Alex Knauth

Reputation: 8373

The packages included in the standard Racket distribution are the ones which the main-distribution package depends on.

These are tagged with the main-distribution tag on the package catalog, so you can see the list here: https://pkgd.racket-lang.org/pkgn/search?tags=main-distribution

Keep in mind that this is a list of packages, not modules. The json module is provided by the base package, the scribble/reader module is provided by the at-exp-lib package, the framework module is provided by the gui-lib package, and so on.

So if you're wondering whether a module is in the main distribution or not, first look up what package it's provided by, and then see whether that package is in the main distribution.

Upvotes: 3

Related Questions