The Racket BC API was originally designed for a tight integration with C code. As a result, the BC API is considerably larger than the Racket CS API.
8 Overview (BC)
8.1 “Scheme” versus “Racket”
8.2 CGC versus 3m
8.3 Embedding and Extending Racket
8.4 Racket BC and Places
8.5 Racket BC and Threads
8.6 Racket BC, Unicode, Characters, and Strings
8.7 Racket BC Integers
9 Embedding into a Program (BC)
9.1 CGC Embedding
9.2 3m Embedding
9.3 Flags and Hooks
10 Writing Racket Extensions (BC)
10.1 CGC Extensions
10.2 3m Extensions
10.3 Declaring a Module in an Extension
11 Values and Types (BC)
11.1 Standard Types
11.2 Global Constants
11.3 Strings
11.4 Value Functions
12 Memory Allocation (BC)
12.1 Cooperating with 3m
12.1.1 Tagged Objects
12.1.2 Local Pointers
12.1.3 Local Pointers and raco ctool --xform
12.1.4 Guiding raco ctool --xform
12.1.5 Places and Garbage Collector Instances
12.2 Memory Functions
13 Namespaces and Modules (BC)
14 Procedures (BC)
15 Evaluation (BC)
15.1 Top-level Evaluation Functions
15.2 Tail Evaluation
15.3 Multiple Values
15.4 Evaluation Functions
16 Exceptions and Escape Continuations (BC)
16.1 Temporarily Catching Error Escapes
16.2 Enabling and Disabling Breaks
16.3 Exception Functions
17 Threads (BC)
17.1 Integration with Threads
17.2 Allowing Thread Switches
17.3 Blocking the Current Thread
17.4 Threads in Embedded Racket with Event Loops
17.4.1 Callbacks for Blocked Threads
17.5 Sleeping by Embedded Racket
17.6 Thread Functions
18 Parameterizations (BC)
19 Continuation Marks (BC)
20 String Encodings (BC)
21 Bignums, Rationals, and Complex Numbers (BC)
22 Ports and the Filesystem (BC)
23 Structures (BC)
24 Security Guards (BC)
25 Custodians (BC)
26 Subprocesses (BC)
27 Miscellaneous Utilities (BC)