caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Antonio Ravara <>
Cc: "Artur Miguel Dias" <>,
	"Simão Melo de Sousa" <>,
	"Rita Macedo" <>
Subject: [Caml-list] Annoucement of OFLAT, a web-based platform to support courses on Formal Languages and Automata Theory
Date: Mon, 22 Mar 2021 17:54:26 +0000	[thread overview]
Message-ID: <> (raw)

To support students’ autonomous work on topics related with Formal 
Languages and Automata Theory (FLAT), interactive tools that allow them 
to experiment with examples and solve exercises are very important - 
several studies demonstrate this.

There are applications with this aim. While some are impressively 
complete, but are mainly Desktop applications (like JFLAP), others that 
can be used via a web browser are under-developed. Moreover, these 
applications are often not fully interactive - illustrations or even 
step-by-step execution is key to understand the algorithms - and, due to 
the programming languages used, implement the concepts in a way quite 
distant from the textbook Mathematical definitions. Code that implements 
closely the definitions is also a relevant pedagogical tool.

With three concerns in mind - availability in mobile devices, 
interactive run of the algorithms (or at least presenting clear 
explanations), and code following closely the definitions - we developed 
OFLAT, a web-based tool to represent and illustrate graphically 
classical mechanisms and algorithms of Formal Languages and Automata 
Theory. It includes not only exercises evaluated automatically and 
providing feedback, but also allows students to create their own 
exercises. An integration with a grading platform like Learn-OCaml is 

The tool is implemented in OCaml and is organised in two parts: a 
library - OCamlFLAT - which concentrates the logic of FLAT concepts, and 
the interactive applicational part - OFLAT. To run on browsers, the 
application uses the OCaml to Javascript translator Js_of_OCaml. To 
implement the interactive graphics, it uses Cytoscape, a Javascript 
library for graphs. All code is available in the Git of the project:, https://git

The development of new functionalities is ongoing (we're now working 
more animations and on Context-Free Grammar and Pushdown Automata). 
Comments most welcome.

Kind regards,
António Ravara
(on behalf of the team)

                 reply	other threads:[~2021-03-22 17:54 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).