CAT: A Customized Automata Toolkit

Ruoyu Wang, Guoqiang Li, Daniel W. Sun, Jianwen Xiang, Hongming Cai · 2016

Automata are a kind of abstract computing machines. They play a basic role in computability theory and programming language theory and are widely used in some programming language compilers as token scanners and syntactic analyzers. More recently in data analytics, data automata have become a formal way to represent pipelines and workflows. In the research involved with automata, however, there are many situations where a practitioner has to build a new automaton with bare hands, which causes a lot of redundant works to rebuild the frame work of an automaton. Moreover, when lot of researchers need to display their ideas and to discuss about new algorithms, it will be extremely hard for them to switch among different styles of codes, not to mention modifying parts of others' programs. In order to solve this problem, we propose a new toolkit: CAT, which provides a simple and unified frame work for automaton construction and customization. This paper introduces the main architecture and functionality of CAT and shows a simple example of how to use it. In the end, we will briefly talk about its advantages and disadvantages as well as some future works to improve it.

Read the paper · More papers on PaperTik