मैं यह पता लगाने की कोशिश कर रहा हूं कि \\
का अर्थ हैस्केल में क्या है?हास्केल में डबल-बैकस्लैश \ का क्या अर्थ है?
मुझे एक प्रोग्राम मिला है जो संकलित होने पर पूरी तरह से चलता है, जिसका अर्थ यह है कि \\
एक अंतर्निहित फ़ंक्शन है, क्योंकि यह प्रोग्राम में कहीं भी परिभाषित नहीं है। हालांकि, जीएचसीआई में, अगर मैं इसे उसी तरीके से उपयोग करने का प्रयास करता हूं, तो मुझे यह कहते हुए एक त्रुटि मिलती है कि यह दायरे में नहीं है।
क्या इसका मतलब प्रत्येक संदर्भ में कुछ खास है?
मेरा कोड यहां है;
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
पहले Google को आजमाएं? – Piccolo
पहले [Hoogle] (http://www.haskell.org/hoogle/) आज़माएं? –
मैं हमेशा Google को पहले कोशिश करता हूं ... लेकिन होगल? इसके बारे में कभी नहीं सुना ... धन्यवाद! यह मेरा जवाब है! – CodyBugstein