RKT
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
Racket Preview.
At a glance
| Purpose | Racket source code: a module of the Scheme-family language, introduced by its #lang line. |
| Extensions | .rkt |
| Poka parser | poka-rkt |
| Viewer | poka-metadata-card-viewer |
| Depth tier | Metadata card (see Depth tiers) |
| Breadth tier | B4 Summary (see Breadth tiers) |
How much Poka reads
B4 Summary. The container and metadata are read and summarised (counts, properties, structure), but the main content is not rendered.
Confidence: medium (the reviewer read the code). Basis: Reviewed 2026-10-26: read parsers/poka-rkt/src/main.rs (333 lines) and plugin.json in full. The crate has no unit tests and no tests/samples.rs, and the corpus has no .rkt sample, so the tier rests on reading the code. Covers .rkt. The output is a metadata card of counts found by matching text line by line: the #lang line, require and provide, define and define-syntax, struct, class, submodules, contracts and tests, the maximum paren depth, and comment and blank lines. Judgement: B4, because the structure is summarised but the source itself is never shown.
What Poka does not read
- The source text is not shown: the card carries only counts and a few sample names, with no code view or highlighting
- Constructs are found by matching text line by line, not by parsing, so multi-line declarations, nested or indented definitions and keywords inside strings or comments can be miscounted
- Counts of named items stop where their name list is capped (requires at 32, provides at 32, macros at 32, defines at 64, structs at 32, classes at 32, submodules at 16), so a larger file under-reports them
- Files over 64 MiB are cut to the first 64 MiB (the card says so)
- Text that is not UTF-8 is decoded with replacement characters; no other encoding is tried
- Block comments (#| … |#) are recognised only where a line starts with #|, and expression comments (#;) not at all, so commented-out forms can be counted (judgement from the code)
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- tree-sitter-racket (candidate; MIT; unknown; https://github.com/6cdh/tree-sitter-racket) — language: C/JavaScript (tree-sitter grammar); Racket grammar, default readtable only; ships a Rust crate (crates.io tree-sitter-racket per repo files).
- lispexp (candidate; Apache-2.0; Rust; https://docs.rs/crate/lispexp/0.1.1) — S-expression reader for many Lisps including Racket; page says pre-implementation, so Racket coverage unverified.
Sources
- parsers/poka-rkt/src/main.rs
- parsers/poka-rkt/plugin.json