2016-02-27 29 views
0

我輸入驗證碼球拍博士對Linux Mint的運行:模塊:複製definiton的標識符:X

lang racket 

(define x 2) 
(define x 3) 

,它顯示了我:

module: duplicate definiton for identifier in: x 

我應該做的是能夠重新定義一個變量? (最初我的代碼更長,但即使只有這一部分單獨產生錯誤)

+2

這不是哈斯克爾。在Racket博士中輸入Haskell也沒有什麼意義。 (和FWIW,如果是Haskell,那麼答案就是_you不能在Haskell_中重新定義一個變量。) – leftaroundabout

+0

你想達到什麼目的?如果你想做Haskell,那麼使用GHCi(或[tryhaskell.org](https://tryhaskell.org/))。如果你想做球拍,請使用博士球拍。 – leftaroundabout

回答

3

在球拍define是用來聲明一個變量,並在同一時間將其設置爲一個值。要將變量設置爲新值,請使用set!

#lang racket 
(define x 2) 
(set! x 3) 
x 
+0

...但永遠不要這樣做。 #functionalrage –