What is ABQMT?
What does it do?
Who can use it?
The best programming language ever?
Computer scientists love graphs!
Programming simple graphics in Java is too confusing
(Swing, AWT, etc.)
We want to use simple syntax to describe simple maps
We don’t like Java
We want a good grade in PLT
Makes the creation of simple maps easy and efficient
Let’s take a look at a simple map we would want to
A Simple Map
Too much Java Code
ABQMT to the rescue!
Edges and Anchors
Demo; //First line: the name of the map file
Map Attributes //
; //equivalence of main block in C
Nodes declarations //declare nodes and initialize attributes
Edges declarations //declare edges and initialize attributes
Make connections //draw the map
; //end of program
The ABQMT Interpreter
We need Java classes to provide templates and
definitions for drawing windows and objects (shapes,
Our interpreter includes these templates then translate
ABQMT function into java code based on these
ABQMT: Node x = new node(55,55,RED,5,CIRCLE)
JAVA: Circle x = new circle(55,55,RED,5,CIRCLE)
Script that iterated through tests and then printed out type
information and displayed maps
Print error messages when failed
AntlrWorks for grammar debugging
Front End: AntlrWorks
We use it to construct recognizers, interpreters, compilers, and
translators from grammatical descriptions containing actions in
Back End: Eclipse and NetBeans (Java) for static semantic
Version Control: SVN
It is used to maintain current and historical versions of files such as
ABQMT is valuable to new and experienced programmer
ABQMT is better than Java!
Team communication is valuable
Now for the ABQMT version of the Manchester map…