Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

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.