Prev Up Next

A Scheme script uses the variable argv to refer to its arguments. For example, the following script echoes all its arguments, each on a line:

":"; exec mzscheme -r $0 "$@"

;Put in argv-count the number of arguments supplied

(define argv-count (vector-length argv))

(let loop ((i 0))
  (unless (>= i argv-count)
    (display (vector-ref argv i))
    (newline)
    (loop (+ i 1))))

Let's call this script echoall. Calling echoall 1 2 3 will display

1
2
3

Note that the script name ("echoall") is not included in the argument vector.

Prev Up Next

Y'know, if you log in, you can write something here, or contact authors directly on the site. Create a New User if you don't already have an account.