L-FLAT: Logtalk Toolkit for Formal Languages and Automata Theory
Paulo Moura, Artur Miguel Dias

TL;DR
L-FLAT is a Logtalk Toolkit designed to aid teaching of Formal Languages and Automata Theory, enabling definition and testing of languages and automata with an extendable, portable framework and integrated automatic grading.
Contribution
It introduces a novel, object-oriented toolkit for formal languages and automata education, supporting multiple mechanisms and integrating with web-based grading systems.
Findings
Supports various automata and language mechanisms
Provides a portable, extendable framework
Includes automatic grading via Mooshak
Abstract
We describe L-FLAT, a Logtalk Toolkit for teaching Formal Languages and Automata Theory. L-FLAT supports the definition of \textsl{alphabets}, the definition of \textsl{orders} over alphabet symbols, the partial definition of \textsl{languages} using unit tests, and the definition of \textsl{mechanisms}, which implement language generators or language recognizers. Supported mechanisms include \textsl{predicates}, \textsl{regular expressions}, \textsl{finite automata}, \textsl{context-free grammars}, \textsl{Turing machines}, and \textsl{push-down automata}. L-FLAT entities are implemented using the object-oriented features of Logtalk, providing a highly portable and easily extendable framework. The use of L-FLAT in educational environments is enhanced by supporting Mooshak, a web application that features automatic grading of submitted programs.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
Topicssemigroups and automata theory · DNA and Biological Computing · Logic, programming, and type systems
