<br><br><div class="gmail_quote">2010/7/24 Ivan Lazar Miljenovic <span dir="ltr">&lt;<a href="mailto:ivan.miljenovic@gmail.com">ivan.miljenovic@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Once again cc-ing -cafe; Immanuel, can you please do &quot;reply to all&quot;<br>
rather than just &quot;reply&quot; in GMail? :p<br></blockquote><div><br>Oh, yes I forgot - sorry!<br><br>Thanks for all the valuable infos :-)<br><br>Immanuel<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<div class="im"><br>
Immanuel Normann &lt;<a href="mailto:immanuel.normann@googlemail.com">immanuel.normann@googlemail.com</a>&gt; writes:<br>
<br>
&gt; 2010/7/24 Ivan Lazar Miljenovic &lt;<a href="mailto:ivan.miljenovic@gmail.com">ivan.miljenovic@gmail.com</a>&gt;<br>
&gt;<br>
&gt;&gt; CC-ing haskell-cafe again:<br>
&gt;&gt;<br>
&gt;&gt; Immanuel Normann &lt;<a href="mailto:immanuel.normann@googlemail.com">immanuel.normann@googlemail.com</a>&gt; writes:<br>
&gt;&gt;<br>
&gt;&gt; &gt; 2010/7/24 Ivan Lazar Miljenovic &lt;<a href="mailto:ivan.miljenovic@gmail.com">ivan.miljenovic@gmail.com</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; &gt; Some of my lnodes in the graph have by construction unique labels and I<br>
&gt;&gt; want<br>
&gt;&gt; &gt; to lookup the lnode from a graph given only the label of that lnode.<br>
&gt;&gt;<br>
&gt;&gt; Well, from my understanding NodeMap doesn&#39;t do what you want, since it<br>
&gt;&gt; assumes that _all_ of the node labels are unique<br>
&gt;<br>
&gt;<br>
&gt; I wouldn&#39;t bother when NodeMap maps also non-unique labels to single nodes,<br>
&gt; because I only lookup nodes with unique labels, e.g. assume my label are of<br>
&gt; the form<br>
&gt; data Label = Unique String | Multi Label<br>
<br>
</div>I&#39;m of the suspicion that using NodeMaps in this fashion will have<br>
problem when considering nodes with the same label (even if you don&#39;t<br>
explicitly use it for those nodes), as NodeMap seems to assume that node<br>
labels are unique.<br>
<br>
For example, mkNode assumes node labels are unique.<br>
<div class="im"><br>
&gt;&gt; Furthemore, the way of using it seems to be analogous of how one would use a<br>
&gt;&gt; State monad<br>
&gt;&gt; rather than for actual interactive use throughout.<br>
&gt;&gt;<br>
&gt;<br>
&gt; Could you elaborate this further, please.<br>
<br>
</div><a href="http://hackage.haskell.org/packages/archive/fgl/5.4.2.3/doc/html/Data-Graph-Inductive-NodeMap.html#v%3Arun" target="_blank">http://hackage.haskell.org/packages/archive/fgl/5.4.2.3/doc/html/Data-Graph-Inductive-NodeMap.html#v%3Arun</a><br>

and<br>
<a href="http://hackage.haskell.org/packages/archive/fgl/5.4.2.3/doc/html/Data-Graph-Inductive-NodeMap.html#v%3Arun_" target="_blank">http://hackage.haskell.org/packages/archive/fgl/5.4.2.3/doc/html/Data-Graph-Inductive-NodeMap.html#v%3Arun_</a><br>

<br>
If you just want a mapping from labels to nodes, you may be better off<br>
using your own custom Map (and maybe even defining a new graph type that<br>
has such a Map as part of it).<br>
<br>
The successor to FGL-5.x (whatever we&#39;ll end up calling it) will allow<br>
you to have custom node types rather than using Ints.  However, this<br>
will not work for you in this situation.<br>
<br>
The node type is just an _index_ type, analogous to the actual hash<br>
value in a hash{map,array} (as opposed to the value which has the<br>
hashing function applied upon it).  It&#39;s there to provide a unique<br>
identifier for a particular node.  Arguably, an abstract type would be<br>
even better as an Int as it will prevent you from doing silly things<br>
like adding node indices together, but that&#39;s beside the point.<br>
<br>
If you wish to find a node with a specific label, try using something<br>
like gsel: <a href="http://hackage.haskell.org/packages/archive/fgl/5.4.2.3/doc/html/Data-Graph-Inductive-Basic.html#v%3Agsel" target="_blank">http://hackage.haskell.org/packages/archive/fgl/5.4.2.3/doc/html/Data-Graph-Inductive-Basic.html#v%3Agsel</a><br>

<div><div></div><div class="h5"><br>
--<br>
Ivan Lazar Miljenovic<br>
<a href="mailto:Ivan.Miljenovic@gmail.com">Ivan.Miljenovic@gmail.com</a><br>
<a href="http://IvanMiljenovic.wordpress.com" target="_blank">IvanMiljenovic.wordpress.com</a><br>
</div></div></blockquote></div><br>