<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Hi Greg,</div><div><br></div><div>Thanks for noticing. I was about to push a new version anyway, so I fixed that issue as well.</div><div><br></div><div>Try the latest version: <a href="https://github.com/esl/gproc/tree/v0.2.0">https://github.com/esl/gproc/tree/v0.2.0</a></div><div><br></div><div>(A slightly bigger version update, since the change in default is BW-incompatible).</div><div><br></div><div>BR,</div><div>Ulf W</div><br><div><div>On 18 Apr 2011, at 17:29, Gregory Haskins wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>On 4/16/11 3:39 PM, Ulf Wiger wrote:<br><blockquote type="cite"><br></blockquote><blockquote type="cite">Thinking about it, I'd like to change gproc:select/1 to also include global objects, in other words:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">select(Pat) -> select({all, all}, Pat).<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">This is a backwards incompatible change, but I am guessing that not too many people use the global gproc functionality yet, so this should be the time to do it.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Any objections?<br></blockquote><br>Sounds good to me (of course, I am biased given I do not have any legacy<br>gproc code ;)<br><br>FYI: While investigating this problem I noticed there is an<br>inconsistency in the QLC interface. That is:<br><br>P <- gproc:table(props) returns both [g,l] matches, whereas<br><br>{{p, '_', Key}, Pid, Val} <- gproc:table(props)<br><br>OR<br><br>{{p, Scope, Key}, Pid, Val} <- gproc:table(props)<br><br>return only local scope matches (as I would expect given my new<br>understanding of "props =:= {local, props}" in the current code base).<br>I would expect all three forms to return a consistent set ([l] based in<br>this case, [g,l] after your proposed change).<br><br>FWIW: The latter two invoke<br><a href="https://github.com/esl/gproc/blob/v0.1.2/src/gproc.erl#L1150">https://github.com/esl/gproc/blob/v0.1.2/src/gproc.erl#L1150</a>, whereas<br>the first form takes a different path due to the way the QLC code builds<br>the matchhead as an is_var().<br><br>I'll take a crack at fixing it and send you a patch, unless this is<br>considered FAD?<br><br>Kind Regards,<br>-Greg<br><br></div></blockquote></div><br><div>
<div>Ulf Wiger, CTO, Erlang Solutions, Ltd.</div><div><a href="http://erlang-solutions.com">http://erlang-solutions.com</a></div><div><br></div><br class="Apple-interchange-newline">
</div>
<br></body></html>