Haskell'de \\
'un ne anlama geldiğini bulmaya çalışıyorum?Çift ters eğik çizgi \ Haskell'de ne anlama geliyor?
Programlanmış herhangi bir yerde tanımlanmadığı için, \\
'un yerleşik bir işlev olduğunu ima ederek, derlendiğinde mükemmel çalışan bir programım var. Ancak, GHCi'de, aynı şekilde kullanmaya çalışırsam, kapsamda olmadığını belirten bir hata alıyorum.
Her bir bağlamda özel bir şey ifade ediyor mu?
İşte kodum;
module Main where
import Data.List
numbersA = [1, 105, 103, 7, 4, 102, 3, 101, 107, 8, 9]
numbersB = [6, 9, 7, 8, 1, 5, 3, 2, 4]
type Number = Integer
type Run = [Number]
extractRuns :: [Number] -> [Run]
extractRuns [] = []
extractRuns xs = run : extractRuns xs'
where run = buildRun (head xs) (tail xs)
xs' = xs \\ run
buildRun :: Number -> [Number] -> Run
buildRun seed numbers
| endRun = [seed]
| otherwise = seed : buildRun seed' numbers'
where endRun = successors == []
successors = filter (.#. seed) numbers
numbers' = numbers \\ [seed]
seed' = head successors
(.#.) :: Number -> Number -> Bool
x .#. y = x /= y && abs (x - y) < 10
runs = extractRuns numbersA
main = print runs
İlk önce Google'ı deneyin? – Piccolo
İlk önce [Hoogle] (http://www.haskell.org/hoogle/) adresini deneyin. –
Her zaman Google'ı denerim ... ama Hoogle? Hiç duymadım ... Teşekkürler! Benim cevabım var! – CodyBugstein