> Ovid and I were getting fed up with the horrible DFA::Simple module, so  
> I wrote a new module, DFA::StateMachine, to take its place in our work.  
> But I'm no computer scientist, so I'm not even sure whether the name is  
> right or if the module functions the way a DFA state machine is  
> supposed to behave. 

/pedant mode:

The term "DFA::StateMachine" is like say "Car::Car". A DFA is by definition
a state machine (it stands for "determinisitic finite state automata"). And
after a review of the code IMO using the term DFA is a bad call. Normally
"DFA" implies a specific type of implementation of a pattern matcher (as
compared to say perls NFA [nondeterministic finite state automata] regex
engine). While I can see the overlap that you are getting at here I think
you will find less people review your work just because they think it must
have to do with pattern matching and not to do with the generic construction
of a rules processor. This is more of a turing machine than what is normally
called a DFA. A term that you encounter in the literature for this type of
construct is an FSA (finite state automaton/aka turing machine) which
doesn't have such a strong association to pattern matching.

Maybe: FSA::Rules is better?

/end pedant mode

Having said that it looks like an interesting module. Id be curious as to
what you use it for tho.

Yves








Reply via email to