On this page:
Zuo:   A Tiny Racket for Scripting
8.12

Zuo: A Tiny Racket for Scripting🔗ℹ

You should use Racket to write scripts. But for the case where you need something much smaller than Racket for some reason, or the case you’re trying to script the build of Racket itself, Zuo is a tiny Racket with primitives for dealing with files and running processes.

    1 Zuo Overview

      1.1 Building and Running Zuo

      1.2 Library Modules and Startup Performance

      1.3 Embedding Zuo in Another Application

      1.4 Zuo Datatypes

      1.5 Zuo Implementation and Macros

      1.6 Zuo Module Protocol

      1.7 Path Handling

    2 Zuo Base Language

      2.1 Syntax and Evaluation Model

      2.2 Binding and Control Forms

        2.2.1 Expression Forms

        2.2.2 Definition Forms

      2.3 Booleans

      2.4 Numbers

      2.5 Pairs and Lists

      2.6 Strings

      2.7 Symbols

      2.8 Hash Tables (Persistent Maps)

      2.9 Procedures

      2.10 Paths

      2.11 Opaque Records

      2.12 Variables

      2.13 Modules and Evaluation

      2.14 Void

      2.15 Reading and Writing Objects

      2.16 Syntax Objects

      2.17 Files, Streams, and Processes

      2.18 Filesystem

      2.19 Run Time Configuration

    3 Zuo as a make Replacement

      3.1 Creating Targets

      3.2 Building Targets

      3.3 Recording Results

      3.4 Parallelism

      3.5 Build API

    4 Zuo Libraries

      4.1 Command-Line Parsing

      4.2 Glob Matching

      4.3 Cooperative Threads

      4.4 Shell Commands

      4.5 C Tools

      4.6 Configuration Parsing

      4.7 Jobserver Client

      4.8 Dry-Run Mode Detection

    5 Zuo with Hygienic Macros

    6 Zuo Data as Module

    7 Zuo Kernel Language

      7.1 Syntactic Forms

      7.2 Primitives

    8 Zuo S-Expression Reader

      8.1 Reading Numbers

      8.2 Reading Symbols

      8.3 Reading Strings

      8.4 Reading Lists

      8.5 Reading Booleans