Composing Turing Machines in FSM

被引:1
|
作者
Morazan, Marco T. [1 ]
机构
[1] Seton Hall Univ, S Orange, NJ 07079 USA
来源
PROCEEDINGS OF THE 2023 ACM SIGPLAN INTERNATIONAL SYMPOSIUM ON SPLASH-E, SPLASH-E 2023 | 2023年
关键词
Turing machines; Turing machine composition; Formal Languages and Automata Theory; Computer Science education; Program design and implementation;
D O I
10.1145/3622780.3623647
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
For Computer Science students, designing Turing machines is a Herculean task. Formal Languages and Automata Theory textbooks aid students by introducing a graphical notation for Turing machine composition. The difficulty of the task remains unchanged, because design principles are not emphasized and students rarely have the opportunity to program their designs in a textual programming language which allows them to write unit tests. To aid students that are trained as programmers, FSM-a domain-specific language for the Automata Theory classroom-has been developed. Using FSM, students design, program, validate, and establish the correctness of their Turing machines. Once they are familiar with Turing machines, students are introduced to Turing machine composition much like they are introduced to function composition when they learn to design programs. To compose Turing machines in FSM, there is an embedded domain-specific language that students may use. In this manner, students' training in programming is made relevant in the course. This article discusses how students are taught to design, program, validate, and establish the correctness of composed Turing machines.
引用
收藏
页码:38 / 49
页数:12
相关论文
共 50 条