Para transformar este programa Scheme em um arquivo que executa um interpretador Scheme, inicie-o com um shebang e torne-a executável ( chmod +x /path/to/program
). Uma linha shebang é a primeira linha de um arquivo executável e começa com #!
seguido pelo caminho completo para o interpretador. Desde que você está usando o Racket:
#!/usr/bin/racket
Se você não quiser especificar o caminho completo para o interpretador, mas quiser que ele seja pesquisado no caminho de pesquisa executável $PATH
, use
#!/usr/bin/env racket
Para acessar os argumentos da linha de comando, o Racket fornece uma biblioteca de análise de linha de comando] ( link ), ou você pode recuperar os parâmetros da linha de comando diretamente com (current-command-line-arguments)
. Você precisará invocar racket
com a opção -f
:
#!/usr/bin/racket -f
…
(define arg (string->number (vector-ref (current-command-line-arguments) 0)))
(display (primes<= arg))
(newline)
Isso não pode ser combinado com #!/usr/bin/env
para pesquisar racket
em $PATH
. Se você quiser, torne seu script poliglota :
#!/bin/sh
":"; exec racket -f "$0" "$@"
…
Se você quiser que seu script seja portátil na implementação do esquema, isso é possível desde que a implementação siga SRFI 22 (que Racket não faz).
#!/usr/bin/env scheme-r5rs
…
(define (main argv)
(display (primes<= (string->number (list-ref argv 1))))
(newline))