User Tools

Site Tools


uf:proximities

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
uf:proximities [2008/09/04 16:46]
elisag
uf:proximities [2009/11/30 16:42]
dharnie proper
Line 1: Line 1:
-===== Proximity ===== 
-<note>  
-dumping everything about proximities here 
-</note> 
- 
-Proximity is a filter object that contains a “function” that determine whether or not a user is proximate. There are several predefined functions: 
-  * isNearby: physical proximity 
-  * isFriend: static encoding of friendship relationships 
-  * doesProfileMatch: tests an attribute of a user’s profile, form ATTR OP VAL, where ATTR is e.g. age, name, gender, hobbies,  
- 
-Other functions can be defined as combinations of existing functions by means or combinators: and, or, not 
- 
-Proximities translate these events into addUser / removeUser events to be processed by flocks. To process these events, flocks register themselves on their dependent proximity. 
- 
-As a first implementation of the RETE-network, maybe we can start from the oo matching that Tom implemented, so that Proximity functions are templates. For example:  
- 
-<code> 
-def flockrTemplate := template: { 
-  def name := *; // wildcard, can be anything 
-  def age := constraint: { _ < 25 }; // must be younger than 25 
-  def address := template: { 
-    def street := *; //any street,but street name must be filled 
-    def city := "Brussel"; // city must equal this string 
-  }; 
-  def greet(); // person must have a greet method 
-} taggedAs: [ Flockr ]; // object must be tagged as a Flockr 
-</code> 
  
uf/proximities.txt · Last modified: 2009/11/30 16:42 by dharnie