### functor class for One Pass systems 

sub new {
    my ($class, $fc) = @_;
    
    $self = { functor => $fc, classop => undef, result => undef, };
    
    bless $self, $class;
}

sub do {
    my ($self, $args) = @_;

    ### FIXME
    return $fc->($args);

}

sub setResult {
    my ($self, $r) = @_;

    $self->{result} = $r;
};

sub setClassOp {
    my ($self, $co) = @_;

    $self->{classop} = $co;
}
