
Orbital library  
PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
public interface Functor
An abstract base interface for all functors of an arity n applicable
in any predicatelogic style.
Usually denoted like "f(...)"
or "P(...)"
.
It provides a way for callers applying the functor, to callback callees
implementing a derivative of Functor.
A Functor f/n is any functionlike object (resembling functionpointers in C++)
implementing Functor
.
Its signature Specification declares which methods are contained.
The exact signature specification of a functor can either be defined
explicitly with a sub interface of Functor
that encapsulates those methods,
or generically with an implicit interface accessed via Functor.Specification
.
Functor
.characterisitic function
χ_{ρ} with χ_{ρ}(x)=1 iff x∈ρ
is a matter purely syntactic variant.
Note however, that inspite of all this duality, functions and predicates can differ intensionally
regardless of their extensional equality.
Finally, functions, predicates, relations, and graphs are all "isomorph" anyhow!
Functor.Specification
,
Functor.Specification.getSpecification(Functor)
,
Function
,
Predicate
,
Properties of Functions,
Functors in the sense of categorytheoryNested Class Summary  

static interface 
Functor.Composite
The base interface for all functors that are composed of other functors. 
static class 
Functor.Specification
Represents a signature and type specification belonging to a functor. 
Method Summary  

boolean 
equals(java.lang.Object o)
. 
int 
hashCode()

java.lang.String 
toString()
Returns a string representation of the Functor. 
Method Detail 

boolean equals(java.lang.Object o)
Note that functors will often provide intensional equality only, since the mathematical notion of extensional equality for functions and predicates is undecidable anyway (Proposition of Rice). Nevertheless implementations are encouraged to provide a larger subset of extensional equality as far as possible.
equals
in class java.lang.Object
int hashCode()
hashCode
in class java.lang.Object
java.lang.String toString()
This method is already provided in Object.toString()
.
If it is overwritten it should return a nice name for the functor.
toString
in class java.lang.Object

Orbital library 1.3.0: 11 Apr 2009 

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 