Professional Documents
Culture Documents
Theory of Formal Languages Lec1
Theory of Formal Languages Lec1
Overview
Introduction to FLAT (Formal Language and Automata) topics Traditional teaching methods Teaching and learning difficulties Teaching strategies Future directions for research Conclusion
Curriculum
Core FLAT topics IEEE and ACM Computing Curriculum 2001 Elective FLAT topics IEEE and ACM Computing Curriculum 2001 Survey conducted
Results of Survey
Topics commonly covered Taught within the three years of an undergraduate degree Discrete mathematics pre-requisite FLAT course at third year level often a pre-requisite to a forth year level course
Traditional chalk-and-board methods Different FLAT topics are presented at lectures from a prescribed text Usually taught without computers and no or minimal programming Assessment
Students not motivated Students find the topics covered abstract and difficult Students find it difficult to conceptualize the concepts due to teaching methods used Lack of immediate feedback on exercises Marking of hand-written tutorials is difficult and error prone
Teaching Strategies
Pencil-and-paper approach Pen-based computing approach Visualization tools Intelligent tutoring systems Stimulating student interest
Pen-and-paper Approach
During lectures:
The tutorial for the week presents the students with more challenging problems Tutorials are marked and feedback is given Evaluation of the method
A new topic is introduced Students are given exercises to work on Students are given assistance if needed The lecturer goes through the solutions with the students
New material is presented using an electronic whiteboard this is transferred to each students whiteboard Students can add their own notes to the transferred material Students are required to work on a problem on the material and can obtain assistance from the lecturer A randomly selected solution is transferred to the lecturers video tablet and discussed with the class An engagement grade is allocated Evaluation of the method
Visualization Tools
To motivate students To assist students conceptualize concepts Create different constructs Simulate the constructs and concepts Provide some feedback on the correctness of student solutions
Functions
Visualization Tools
Uses
during lectures by the lecturer and/or during tutorials by students in their own time for marking purposes by lecturers
These systems provide the learner with individualized tuition. FLUTE (Formal Languages and Automata Environment) FLUTE has the following modules:
Areas covered by FLUTE: mathematics basics and regular and context-free automata and grammars
Expert module Explanation module Student module Pedagogical module User interface module
Using examples that link to other FLAT topics Using current applications of FLAT to introduce FLAT topics Examining the role that FLAT has played on the history of Computer Science Using games to illustrate FLAT concepts
Projects requiring students to write programs that create and simulate different constructs Building intelligent tutoring systems Collaborative learning by means of group work Evaluation of teaching strategies
Conclusion
FLAT is incorporated into the undergraduate degree at different levels Traditional chalk-and-board methods are not sufficient to illustrate this concepts Constructivist teaching methods are needed that provide students with immediate feedback are needed Avenues for further research