HOOPL

2012-05-29 15 views
5

का उपयोग कर डेटा प्रवाह अनुकूलन मैं हास्केल प्रोग्रामर हूं (मैं आम तौर पर algorithms in Haskell लागू करता हूं) और HOOPL लाइब्रेरी को समझने की कोशिश कर रहा हूं लेकिन मैं इसे डीकोड करने में सक्षम नहीं हूं। मेरे पास कंपाइलर पृष्ठभूमि नहीं है (वर्तमान में Coursera और compilers से सीखना: सिद्धांत, तकनीक, और उपकरण) और यह बहुत अच्छा होगा अगर आप मुझे HOOPL लाइब्रेरी समझने के लिए एक व्यवस्थित तरीका सुझा सकते हैं (पूर्वापेक्षाएँ क्या है)। मैं एक छोटे से हास्केल कोड है जिस पर मैं कैसे HOOPL कोड लिखने के लिए HOOPLHOOPL

add :: Int -> Int -> Int 
add x y = z where 
    x' = 1 
    y' = 1 -- this will be dead code elimination 
    z = x' + 1 

का उपयोग कर इस अनुकूलन करने के लिए डाटा प्रवाह अनुकूलन लागू करना चाहते हैं का कहना है की सुविधा देता है। यह बहुत अच्छा होगा अगर आप थोड़ा बेहतर उदाहरण दे सकते हैं और मुझे बेवकूफ लगता है तो मुझे माफ़ कर दो।

+0

आपको बेवकूफ नहीं लगता है। [यह पेपर] (http://research.microsoft.com/en-us/um/people/simonpj/papers/c--/dfopt-popl10.pdf) काफी पठनीय दिखता है और मृत-कोड उन्मूलन को संबोधित करने के लिए प्रतीत होता है। – jberryman

उत्तर

5

शुरू करने के लिए एक अच्छी जगह गिट रेपो खींच रही है, जिसमें हैकेज की तुलना में बहुत सी अतिरिक्त फ़ाइलें हैं।/उपनिर्देशिका परीक्षण/देखो, और आप एक मूल अनिवार्य भाषा परिभाषित कुछ सरल कोड और उस पर कुछ अनुकूलन देख सकते हैं।