<h1>The gproc application</h1> The gproc application ===================== Extended process dictionary <h2>Introduction</h2> . __Authors:__ Ulf Wiger ([`ulf.wiger@erlang-consulting.com`](mailto:ulf.wiger@erlang-consulting.com)), Joseph Wayne Norton ([`norton@geminimobile.com`](mailto:norton@geminimobile.com)).Extended process dictionary <h2>Introduction</h2> Gproc was first introduced at the ACM SIGPLAN Erlang Workshop in Freiburg 2007 ([Paper available here](erlang07-wiger.pdf)). This application was designed to meet the following requirements: <li> A process can register itself using any term. A process can register more than one name A process can publish non-unique {Key,Value} 'properties' The registry must be efficiently searchable </li> As additional features, the registry was designed to allow global registration, and a special {Key,Value} property called a counter. It is also possible to create an 'aggregate counter', which will continuously reflect the sum of all counters with the same name. _In its current state, the global registration facility is brokenand should not be used. It will be migrated over to a new version of gen_leader. This work will be done with low priority unless peopleexpress a strong urge to use this functionality._ <h2 class="indextitle">Modules</h2> <table width="100%" border="0" summary="list of modules"> <tr><td><a href="gproc.md" class="module">gproc</a></td></tr> <tr><td><a href="gproc_app.md" class="module">gproc_app</a></td></tr> <tr><td><a href="gproc_dist.md" class="module">gproc_dist</a></td></tr> <tr><td><a href="gproc_init.md" class="module">gproc_init</a></td></tr> <tr><td><a href="gproc_lib.md" class="module">gproc_lib</a></td></tr> <tr><td><a href="gproc_sup.md" class="module">gproc_sup</a></td></tr></table>