[Haskell-cafe] Array and Ix for custom Graph ADT

2011-08-13 Thread Mark Spezzano
Hi, I'm creating a Graph data structure, and I want to use the array list approach, implemented as an Array. I need my Nodes to be instances of Ix for this to work and my Node type is roughly as follows: data Node = MyNode Int [Int] Type1 Type2 (Type1 and Type2 are nullary algebraic

Re: [Haskell-cafe] Array and Ix for custom Graph ADT

2011-08-13 Thread Antoine Latter
On Sat, Aug 13, 2011 at 4:37 AM, Mark Spezzano mark.spezz...@chariot.net.au wrote: Hi, I'm creating a Graph data structure, and I want to use the array list approach, implemented as an Array. I need my Nodes to be instances of Ix for this to work and my Node type is roughly as follows:

Re: [Haskell-cafe] Array and Ix for custom Graph ADT

2011-08-13 Thread Mark Spezzano
Hi Antoine, The first Int field is a unique index, beginning at 1 and increasing by 1 for each unique Node. The second [Int] field is just a list of random numbers associated with that node. Mark On 14/08/2011, at 2:13 AM, Antoine Latter wrote: On Sat, Aug 13, 2011 at 4:37 AM, Mark

Re: [Haskell-cafe] Array and Ix for custom Graph ADT

2011-08-13 Thread Daniel Fischer
On Sunday 14 August 2011, 00:41:33, Mark Spezzano wrote: Hi Antoine, The first Int field is a unique index, beginning at 1 and increasing by 1 for each unique Node. Then you could use that for indexing, assuming the Ord instance matches. range (MyNode x _ _ _, MyNode y _ _ _) = [x .. y]

Re: [Haskell-cafe] Array and Ix for custom Graph ADT

2011-08-13 Thread Mark Spezzano
Solved it with your help :) Thanks for your assistance! Mark Spezzano On 14/08/2011, at 8:29 AM, Daniel Fischer wrote: On Sunday 14 August 2011, 00:41:33, Mark Spezzano wrote: Hi Antoine, The first Int field is a unique index, beginning at 1 and increasing by 1 for each unique Node.