2014
DOI: 10.4204/eptcs.170.2
|View full text |Cite
|
Sign up to set email alerts
|

Functional Automata - Formal Languages for Computer Science Students

Abstract: An introductory formal languages course exposes advanced undergraduate and early graduate students to automata theory, grammars, constructive proofs, computability, and decidability. Programming students find these topics to be challenging or, in many cases, overwhelming and on the fringe of Computer Science. The existence of this perception is not completely absurd since students are asked to design and prove correct machines and grammars without being able to experiment nor get immediate feedback, which is e… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
6
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
4
1

Relationship

3
2

Authors

Journals

citations
Cited by 6 publications
(6 citation statements)
references
References 7 publications
0
6
0
Order By: Relevance
“…This feedback is obtained from the FSM error-messaging system. For a more thorough description of FSM [19] and of the FSM error-messaging system [20], the reader is referred to the cited publications.…”
Section: Fsm Interfacementioning
confidence: 99%
See 1 more Smart Citation
“…This feedback is obtained from the FSM error-messaging system. For a more thorough description of FSM [19] and of the FSM error-messaging system [20], the reader is referred to the cited publications.…”
Section: Fsm Interfacementioning
confidence: 99%
“…Given that it is reasonable for Computer Science students to be able to experiment with their designs, a domain-specific language (DSL), FSM (Functional State Machines), was developed [19]. This DSL (embedded in Racket) allows students to implement finite-state machines.…”
Section: Introductionmentioning
confidence: 99%
“…In this section, we restrict ourselves to a couple of examples to give the reader a flavor of how FSM primitive constructors are used. For a full description of FSM, the reader is referred to a previously published article [8].…”
Section: Overview Of Fsmmentioning
confidence: 99%
“…Given that it is reasonable for Computer Science students to be able to experiment with their designs, the FSM (Functional State Machines) library was developed [8]. This library (implemented in Racket) allows students to implement state-machines (e.g., finite-state automata, pushdown automata, and Turing machines) and grammars (e.g., regular, context-free, and context-sensitive).…”
Section: Introductionmentioning
confidence: 99%
“…This article outlines a programming-based approach to teaching students about regular expressions in their first automata theory course using FSM (F inite S tate M achines). FSM is a domain-specific language in which regular expressions, state machines, and grammars are types [10]. Students are exposed to all the theory addressed by a traditional non-programming-based automata theory course, but are engaged by programming regular expressions and by designing/implementing programs based on regular expressions.…”
Section: Introductionmentioning
confidence: 99%