Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
Tools to Implement Automata, a First Step: ASTL
WIA '97 Revised Papers from the Second International Workshop on Implementing Automata
Short Regular Expressions from Finite Automata: Empirical Results
CIAA '09 Proceedings of the 14th International Conference on Implementation and Application of Automata
Regular expressions at their best: a case for rational design
CIAA'10 Proceedings of the 15th international conference on Implementation and application of automata
Hi-index | 0.00 |
The iterator concept is becoming the fundamental abstraction of reusable software and the key to modularity and clean code especially in object-oriented languages like C++ and Java. They serve as accessors to a sequence hiding the implementation details from the algorithm and their encapsulation power allows true generic programming. The Standard Template Library defines clearly their behavior on simple sequences like linked lists or vectors. In this paper, we define the concept of cursor which can be seen as a generalization of the iterator concept to more complex data structures than sequences, in this case acyclic automata. We show how elegant and efficient they can be on applications written in C++ and based on the Automaton Standard Template Library.