बीजगणितीय डेटा प्रकारों का उपयोग करके हैस्केल में एक पेड़ या सूची का प्रतिनिधित्व करना काफी आसान है। लेकिन आप एक ग्राफ का प्रतिनिधित्व करते हुए टाइपोग्राफिक रूप से कैसे जाएंगे? ऐसा लगता है कि आपको संकेत करने की आवश्यकता है। मुझे लगता है कि तुम कुछ पसंद कर सकते हैं
type Nodetag = String
type Neighbours = [Nodetag]
data Node a = Node a Nodetag Neighbours
और यह व्यावहारिक होगा। हालाँकि यह थोड़ा विघटित महसूस करता है; संरचना में अलग-अलग नोड्स के बीच के लिंक वास्तव में "महसूस" नहीं करते हैं क्योंकि सूची में वर्तमान पिछले और अगले तत्वों के बीच के लिंक, या एक पेड़ में एक नोड के माता-पिता और बच्चे। मेरे पास एक कूबड़ है जो ग्राफ पर बीजगणितीय जोड़तोड़ कर रहा है जैसा कि मैंने परिभाषित किया था कि यह टैग सिस्टम के माध्यम से शुरू किए गए अप्रत्यक्ष के स्तर से कुछ हद तक बाधित होगा।
यह मुख्य रूप से संदेह की भावना और असमानता की धारणा है जो मुझे यह सवाल पूछने का कारण बनता है। क्या हास्केल में रेखांकन को परिभाषित करने का एक बेहतर / अधिक गणितीय तरीका है? या क्या मैंने कुछ मुश्किल / मौलिक पर ठोकर खाई है? पुनरावर्ती डेटा संरचनाएं मीठी हैं, लेकिन यह कुछ और ही प्रतीत होता है। एक अलग संदर्भ में एक स्व-संदर्भात्मक डेटा संरचना कैसे पेड़ों और सूचियों को आत्म-संदर्भित किया जाता है। यह सूची की तरह है और पेड़ प्रकार के स्तर पर आत्म संदर्भित हैं, लेकिन मूल्य स्तर पर रेखांकन स्वयं संदर्भित हैं।
तो वास्तव में क्या हो रहा है?
fgl
पैकेज विकसित हुआ।