2017-11-16 19 views
6

मैं हास्केल के लिए नौसिखिया हूं और मुझे पता है कि हास्केल मानक पुस्तकालय modules में विभाजित है, उनमें से प्रत्येक में functions और types शामिल हैं जो किसी भी तरह से संबंधित हैं और कुछ सामान्य उद्देश्य प्रदान करते हैं। मैं उन पुस्तकालय कार्यों के कार्यान्वयन (कोड) को देखना चाहता हूं। मैं इसे कहां देख सकता हूं? ghci में कोई आदेश है ताकि मैं कार्यान्वयन देख सकूं या मॉड्यूल के बारे में जानने के लिए मुझे कोई संसाधन प्रदान कर सकूं। धन्यवादहैकेल में मॉड्यूल के फ़ंक्शन के कार्यान्वित कोड को कैसे देखें?

+2

इसे हैकेज से देखें। उदाहरण के लिए यह [डेटा। वेक्टर] है (https://hackage.haskell.org/package/vector-0.12.0.1/docs/Data-Vector.html) पैकेज। प्रत्येक फ़ंक्शन, इंस्टेंस या डेटा परिभाषा समझाया गया है जिसमें संबंधित लाइन के दाईं ओर एक # सोर्स लिंक भी शामिल है। – Redu

उत्तर

4

शायद इसे करने का सबसे सुविधाजनक तरीका Hackage का उपयोग करें। फ़ंक्शन हस्ताक्षर के दाईं ओर Source पर क्लिक करके आप उदाहरण के लिए map फ़ंक्शन का निरीक्षण कर सकते हैं। यह तब हाइलाइट किए गए कोड खंड दिखाएगा। उदाहरण के लिए:

map :: (a -> b) -> [a] -> [b] 
{-# NOINLINE [0] map #-} 
    -- We want the RULEs "map" and "map/coerce" to fire first. 
    -- map is recursive, so won't inline anyway, 
    -- but saying so is more explicit, and silences warnings 
map _ []  = [] 
map f (x:xs) = f x : map f xs 

तुम भी नाम या हस्ताक्षर से कार्यों खोज करने के लिए Hoogle उपयोग कर सकते हैं, और परिणाम पर क्लिक करके, आप प्रासंगिक hackage पृष्ठ पर पुनः निर्देशित किया जाएगा।

संबंधित मुद्दे