Automata-based Programming (Shalyto's Approach) - Computational Algorithms

Computational Algorithms

Automata approach can be used for computational algorithms implementation. It was shown (Tukkel 2002) that arbitrary iterative algorithm can be implemented with the help of construction, that is equivalent to the loop operator do ... while, inside which there is single switch operator that implements automaton.

Automata-based approach is very effective for implementation of some algorithms of discrete mathematics, for example, tree parsing algorithm (Korneev 2004).

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 (Kazakov 2005) (Korneev 2005). 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.

Read more about this topic:  Automata-based Programming (Shalyto's Approach)