Orbital library

Package orbital.logic.functor

Contains template interfaces for logic functors like Predicates and Functions that can be used for generalized call-back, and functional operations based upon them.

See:
          Description

Interface Summary
BinaryFunction A functor that encapsulates the binary function f/2.
BinaryFunction.Composite A composed BinaryFunction.
BinaryPredicate A functor that encapsulates the binary predicate P/2.
BinaryPredicate.Composite A composed BinaryPredicate.
Function A functor that encapsulates the unary function f/1 which is kind of the most general Functor.
Function.Composite A composed Function.
Functor An abstract base interface for all functors of an arity n applicable in any predicate-logic style.
Functor.Composite The base interface for all functors that are composed of other functors.
MutableFunction A mutable function that can change its values.
Predicate A functor that encapsulates a unary predicate P/1.
Predicate.Composite A composed Predicate.
VoidFunction A functor that encapsulates the void function f/0 which is constant if consistent.
VoidFunction.Composite A composed VoidFunction.
VoidPredicate A functor that encapsulates the void predicate P/0 which is constant if consistent.
VoidPredicate.Composite A composed VoidPredicate.
 

Class Summary
Functionals Provides important compositional functionals for functors.
Functionals.Anamorphism Anamorphism recursion functional scheme (lense).
Functionals.Catamorphism Catamorphism recursion functional scheme (banana).
Functionals.Hylomorphism Hylomorphism recursion functional scheme (envelope).
Functionals.Paramorphism Paramorphism recursion functional scheme (barbed wire).
Functions Function Implementations.
Functor.Specification Represents a signature and type specification belonging to a functor.
MutableFunction.TableFunction A mutable function implemented as a tabular HashMap.
Predicates Predicate Implementations.
 

Package orbital.logic.functor Description

Contains template interfaces for logic functors like Predicates and Functions that can be used for generalized call-back, and functional operations based upon them.

The orbital.logic.functor.Functor interface is the basic interface tagging all sub interfaces that define (logical) functors. Instances of implementing classes can be used as a call-back through this common interface. Predicates are special Functors returning a boolean (success or failure), while Functions are Functors returning arbitrary objects (return value).

Note that this package contains templates

Common logic functor interfaces:

The class orbital.logic.functor.Functionals defines several useful static methods for composing or converting functors and for applying them in various recursion schemes.
See Also:
orbital.math.functional (dual to this package), Java templates, Properties of Relations and Functions.


Orbital library
1.3.0: 11 Apr 2009

Copyright © 1996-2009 André Platzer
All Rights Reserved.