|
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 predicate-logic 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 function-like object (resembling function-pointers 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 category-theoryNested 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 |