বীজগণিত তথ্য প্রকারগুলি ব্যবহার করে হ্যাশকেলে একটি গাছ বা তালিকা উপস্থাপন করা যথেষ্ট সহজ। তবে আপনি কীভাবে কোনও গ্রাফকে টাইপোগ্রাফিকভাবে উপস্থাপন করতে যাবেন? মনে হচ্ছে আপনার পয়েন্টার থাকা দরকার। আমি অনুমান করছি আপনার মতো কিছু থাকতে পারে
type Nodetag = String
type Neighbours = [Nodetag]
data Node a = Node a Nodetag Neighbours
এবং এটি কার্যক্ষম হবে। তবে এটি কিছুটা হতাশায় অনুভূত হয়; কাঠামোর বিভিন্ন নোডের লিঙ্কগুলি তালিকার বর্তমান এবং পরবর্তী উপাদানগুলির মধ্যে বা গাছের নোডের বাবা-মা এবং বাচ্চাদের মধ্যে যে লিঙ্কগুলি রয়েছে তা ঠিক "অনুভব" করে না। আমার একটা কুঁচক আছে যে আমি গ্রাফিকটিতে বীজগণিত ম্যানিপুলেশনগুলি করছিলাম যেহেতু এটি ট্যাগ সিস্টেমের মাধ্যমে প্রবর্তিত স্তরটি কিছুটা বাধা হয়ে দাঁড়াবে।
এটিই সন্দেহ এবং অকল্যাণের অনুভূতির মূল কারণ যা আমাকে এই প্রশ্ন জিজ্ঞাসা করে। হাস্কেলের গ্রাফগুলি সংজ্ঞায়নের জন্য আরও কি আরও ভাল / আরও গাণিতিকভাবে মার্জিত উপায় আছে? নাকি আমি অন্তর্নিহিত শক্ত / মৌলিক কিছুতে হোঁচট খেয়েছি? রিকার্সিভ ডেটা স্ট্রাকচারগুলি মিষ্টি তবে এটি অন্যরকম বলে মনে হচ্ছে। গাছ এবং তালিকাগুলি কীভাবে স্বতঃপ্রকাশিত হয় তার একটি পৃথক অর্থে একটি স্বতন্ত্র রেফারেন্সিয়াল ডেটা কাঠামো। এটি তালিকার মতো এবং গাছগুলি ধরণের স্তরে স্ব-রেফারেন্সিয়াল, তবে গ্রাফগুলি মান স্তরের স্ব-রেফারেন্সিয়াল।
আসলে কি হচ্ছে?
fgl
বাইরে প্যাকেজটি বিকশিত হয়েছিল।