parser : Java Glossary
home P words local find no local find frame, full screen Google search web for topic jump to footer translate with Babelfish by Roedy Green ©1996-2008 Canadian Mind Products
Go to : punctuation 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z (all)
parser
a program that analyses syntax. It might for example look at a piece of Java source code and find all the variable names, method names and operators in order to compile it into JVM byte code, or it might analyse HTML, or your own invented language. The original LEX/YACC/Bison generated C code. There are now variants that generate Java code. My personal favourite, based mainly on the accessible documentation is JavaCC. People who write parsers have a strange language all their own. The Parsifal glossary may help. The writers of these tools are academics, and are not interested in teaching you anything, just impressing you with how brilliant their programs are. This means the manuals are almost useless. You have to study examples, particularly the simple ones and gradually the manuals will begin to make sense. Another learning technique is to examine the Java code generated from some sample grammars. Authors took six years of university courses to get to their level of parser understanding, why should they make it any easier for you?
Roughly what happens is you describe your grammar in some Mickey Mouse syntax. Then a utility converts that into a Java program that will analyse text conforming to that grammar. I must admit I am shocked at how ugly the specification languages are. I would have thought they would be the most beautiful and regular of all languages, being composed by afficionados of language analysis.
Java has four simple built-in parsers, java.util.StringTokenizer, java.io.StreamTokenizer, java.text.BreakIterator. and java.regex.Pattern.

Java 1.5+ also has a number of XML parsers built-in. Check out the DOM, SAX, XSD, XPath and Schema entries.

ANTLR (formerly PCCTS)
Barat (parses Java source and byte code)
BestCode Math Parser
BYACC
CUP
DOM
finite state automaton
grammar
JavaCC (formerly Jack)
JavaCUP
JB (converts Bison to Java)
JEP (Java Expression Parser) parses and evaluates mathematical expressions
Jericho HTML parser
JFlex
JLEX
JTB
Koala XSL (parses XML)
lexer
List of HTML parsers
List of Open Source Parsers
MixedCC (for PHP, JSP)
PCCTS
Quiotix HTML parser (very easy to use. You just write a few visitor stubs)
regex
SableCC
SAX
schema
SMC
Ucalc FMP Language Builder: interactive
VisualParse++
XML
XPath
XSD
YACC

CMP_homejump to top
CMP logo
feedback Please email your feedback for publication, errors, omissions, broken/redirected link reports
and suggestions to improve this page to Roedy Green : feedback email
made with CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[65.110.21.43]
Your face IP:[38.103.63.18] The information on this page is for non-military use only.
You are visitor number 23,843. Military use includes use by defence contractors.
You can get a fresh copy of this page from: or possibly from your local J: drive (Java virtual drive/Mindprod website mirror)
http://mindprod.com/jgloss/parser.html J:\mindprod\jgloss\parser.html