2016-06-21 17 views
7

Sto lavorando a uno script Racket (su una macchina Linux) che richiede la libreria matematica/teoria dei numeri. La mia intera sceneggiatura al momento è così:Previsto una dichiarazione del modulo, trovato qualcos'altro?

#!/usr/bin/racket 

(require math/number-theory) 

Sì, letteralmente richiede solo la libreria.

Quando provo a eseguirlo, viene visualizzato un errore che legge "dichiarazione di un modulo prevista": qualcos'altro ".

Tuttavia, quando ho effettivamente start up Racket nel terminale in questo modo:

/usr/bin/racket 

e inserire (richiede math/teoria dei numeri) nella riga di comando, si tratta come è del tutto valida.

Cosa sta succedendo qui?

+0

La differenza tra un programma e l'REPL. Prova ad aggiungere un'espressione (come #f) dopo aver richiesto. – leppie

+0

L'ho fatto; non ha aiutato affatto. – QuillAndSaber

+7

Hai bisogno di "#lang racket" nella parte superiore, appena al di sotto della shebang. –

risposta

6

Assicurarsi che la parte superiore dei file della racchetta contenga anche una dichiarazione #lang.

In altre parole, avete bisogno di questo nella parte superiore del file:

#!/usr/bin/racket 
#lang racket