; -*- scheme -*- ; hello world ; print a simple string on stdout (display "Hello World\n") ; argv ; access command line parameters (no segmentation fault accepted, nor silent exception, so some languages must explicitly check the presence of the argument) (format #t "~A\n" (cadr command-line)) ; env ; access environment variable (format #t "~A\n" (getenv "HOME")) ; test file exists ; return exit code error (non zero) if a file does not exist (exit (access? "/etc/mtab" F_OK)) ; test file readable ; return exit code error (non zero) if a file is not readable (exit (access? "/etc/mtab" R_OK)) ; formatting ; print integers in a simple formatted string (let ((a 1) (b 2)) (format #t "~A + ~A = ~A\n" a b (+ a b))) ; system ; call an external program and check the return value (if (not (= (system "false") 0)) (display "false failed\n" (current-error-port))) (system "echo done")