SpecHaskell errore: Errore di analisi sull'ingresso `='
GHC 6.12.1
Mac OS X 10.6.4 x64
MacBook Pro
Problema
Ho problemi con la sintassi let
. Il seguente codice si rifiuta di compilazione:
module Main where
main = let x = 1
y = 2
z = 3
in putStrLn $ "X = " ++ show x ++ "\nY = " ++ show y ++ "\nZ = " ++ show z
ho provato tabulazione in y = 2
e z = 3
ancora di più. Niente da fare.
(indesiderati) Soluzioni
L'unico modo che ho ottenuto il codice per compilare è o
- Sostituzione schede duri con gli spazi.
- Sostituzione della clausola
let
con una clausolawhere
.
non usare mai schede con Haskell, utilizzare sempre gli spazi.Le schede in haskell sono definite come 8 spazi, che è molto più di quanto le persone spesso si aspettino/impostino il loro editor, quindi è sempre consigliabile utilizzare gli spazi. Qualsiasi editor decente ti consentirà di creare schede producendo spazi. – Axman6
Ho trovato questo eccellente aiuto visivo e un'ottima guida sull'argomento in generale: [http://echo.rsmw.net/n00bfaq.html#visualaid](http://echo.rsmw.net/n00bfaq.html# visualaid) – Brandon