2 Running Top-Level Programs
To run a top-level program, either:
Use the plt-r6rs executable, supplying the file that contains the program on the command line:
plt-r6rs ‹program-file›
Additional command-line arguments are propagated as command-line arguments to the program (accessed via command-line).
To compile the file to bytecode (to speed future runs of the program), use plt-r6rs with the --compile flag:
plt-r6rs --compile ‹program-file›
The bytecode file is written in a "compiled" sub-directory next to ‹program-file›.
For example, if "hi.sps" contains
(import (rnrs)) (display "hello\n") then
plt-r6rs hi.sps
prints “hello.”
Prefix the program with #!r6rs, which counts as a comment from the R6RS perspective, but is a synonym for #lang r6rs from the Racket perspective. Such files can be run like any other Racket module, such as using racket:
racket ‹program-file›
or using DrRacket. The file can also be compiled to bytecode using raco make:
raco make ‹program-file›
For example, if "hi.sps" contains
#!r6rs (import (rnrs)) (display "hello\n") then
racket hi.sps
prints “hello.” Similarly, opening "hi.sps" in DrRacket and clicking Run prints “hello” within the DrRacket interactions window.