It was shown that arbitrary iterative algorithm can be implemented with the help of construction, that is equivalent to the loop operator codice_1, inside which there is single codice_2 operator that implements automaton. Automata-based approach is very effective for implementation of some algorithms of discrete mathematics, for example, tree parsing algorithm . A new state-based approach to creation of algorithms' visualizers was offered. Such visualization software is widely used in the Computer Technologies department of Saint Petersburg State University of Information Technologies, Mechanics and Optics for students teaching in programming and discrete mathematics . This approach allows representing of visualizer's logic as a system of interacting finite state machines. This system consists of pairs of automata; each of this pairs contains “forward” and “backward” automata, which provides step-by-step forwards and backwards execution of algorithms respectively. Various software tools are developed to support automata programming. One of these tools is "UniMod" . This tool is based on the following concepts: UML, Switch-technology, Eclipse IDE, Java programming language, open source code (http://unimod.sourceforge.net/). All this enables one to talk about the "UniMod" as of the implementation of executable UML. Some examples of usage of UniMod tool are shown in . Collected articles on automata-based programming were published in ITMO University. Bulletin contains 28 articles on different problems of automata-based programming. In 2009 in St. Petersburg, Russia the first book about automata-based programming was published .