The *(term) for the process of turning an input stream into an _(abstract syntax tree). Parsing generally depends on the complexity of the grammar or *(syntax), and in the most general cases can require a Turing-complete program, i.e. its own _(programming language).

<ul class="links">
  <li>_("Lex And Yacc Tutorial"|http://www.geocities.com/SiliconValley/Campus/3754/index.htm).</li>
  <li>The book _("Parsing Techniques - A Practical Guide"| http://www.cs.vu.nl/~dick/PTAPG.html) (there are many others) is available online.</li>
  <li>The book _("Prolog Parsers - Parsing techniques in"|http://utenti.lycos.it/parsers/) _(Prolog) by Klaus von Bremen, available online.</li>
  <li>_("Parser and Scanner Generators"|http://students.si.fct.unl.pt/users/pjmlp/en/parserscan.html).</li>
  <li>_("Concurrent, Object-Oriented Natural Language Parsing: The ParseTalk Model"|http://citeseer.nj.nec.com/111233.html).</li>
  <li>_("Let's Build a Compiler"|http://compilers.iecc.com/crenshaw/), by Jack Crenshaw, Ph.D. - an introduction to program translators, using a simplified approach inspired by _(Small C).</li>
</ul>

<ul class="implementations">
  <li>_("ANTLR"|http://www.antlr.org) ANother Tool for Language Recognition, FKA PCCTS, a framework for constructing recognizers, compilers, and translators.</li>
  <li>_("Attribute Grammars home page"|http://www-rocq.inria.fr/oscar/www/fnc2/AGtexte.html).</li>
  <li>_("basil"|http://wildideas.org/basil/) (_(SourceForge) _("entry"|http://sourceforge.net/projects/basil/)) a parsing and modeling environment for working with, code in, and integrate any computer language.</li>
  <li>_("The BNF Converter"|http://www.cs.chalmers.se/~markus/BNFC/) a _(BNF)-based compiler construction tool written for _(Haskell).</li>
  <li>_("C++ Compiler Compiler (CppCC)"|http://cppcc.sourceforge.net/) _("at SourceForge"|http://sourceforge.net/projects/cppcc/) an object-oriented scanner and LL(k) parser generator. It aims to replace LEX&YACC for those who write _(C++) applications that involve parsing.</li>
  <li>_("Compiler Generation Tools"|http://dotnet.jku.at/Projects/Rotor/) for _(C#).</li>
  <li>_("CTool"|http://ctool.sourceforge.net) a _(C|C language) lexer/parser with a symbol table.</li>
  <li>_("ddgen"|http://www.idt.mdh.se/kpt/Homepage/software.html) by _("Kjell Post"|http://www.idt.mdh.se/kpt/), a parser generator for dynamic operator languages.</li>
  <li>[_(MIA)] _("dendra"|http://starlane.org/code/dendra/dendra.html) (try _("Google cache"|http://216.239.37.100/search?q=cache:QKEVJeam4uoC:starlane.org/code/dendra/dendra.html+dendra%2BLisp&hl=it&ie=UTF-8)) _(Lisp) style syntax parsing and printing code.</li>
  <li>_("dparser"|http://dparser.sourceforge.net/) (_(freshmeat) _("entry"|http://freshmeat.net/projects/dparser/)) a scannerless GLR parser generator based on the Tomita algorithm.</li>
  <li>_("Essence"|http://www.informatik.uni-freiburg.de/proglang/software/essence/), an LR parser generator for _(Scheme).</li>
  <li>_("Functional Parsers"|http://www.cs.ruu.nl/~jeroen/article/parsers/index.html).</li>
  <li>_("Gray"|http://www.complang.tuwien.ac.at/projects/forth.html) a parser generator in _(FORTH).</li>
  <li>_("ipars"|http://sourceforge.net/projects/ipars/) Incremental scanner/PARSer.</li>
  <li>_("lambdayacc"|http://www.cs.hofstra.edu/~cscccl/parsergen/) _(Lambda Prolog) Parser Generator.</li>
  <li>_("REGEX/CLAWK/LEXER Packages"|http://www.geocities.com/mparker762/clawk.html) (_(CLiki) _("entry"|http://www.cliki.net/RegEx-CLAWK-Lexer)) regex matcher/interesting bits of _(AWK)/ lexer-generator macro.</li>
  <li>_("Lextools"|http://www.research.att.com/sw/tools/lextools/) a toolkit for finite-state linguistic analysis.</li>
  <li>_("lfg"|http://www.ece.purdue.edu/~qobi/software.html) a parser for an LFG-like grammar formalism for _(Scheme).</li>
  <li>_("locos"|http://sourceforge.net/projects/locos/) an _(OO) framework for building parsers and other language processing tools.</li>
  <li>_("lrc"|http://www.cs.ruu.nl/groups/ST/Software/LRC/) a system for generating efficient incremental attribute evaluators, used to generate language based editors and other advanced interactive environments.</li>
  <li>_("O2C2"|http://www.di.uniovi.es/~candi/o2c2/o2c2.htm) _(OO) Compiler Construction, recursive descent LL (k)-based parsers from syntactic specification (_(EBNF) notation).</li>
  <li>_("Olex"|http://sourceforge.net/projects/olex/) (_("at SourceForge"|http://sourceforge.net/projects/olex/)) a LL(1) parser generator for _(C++).</li>
  <li>_("Plex"|http://www.cosc.canterbury.ac.nz/~greg/python/Plex/) a Python module for constructing lexical analysers/scanners.</li>
  <li>_("Parsec, a fast combinator parser"|http://www.cs.uu.nl/~daan/papers/parsec.html).</li>
  <li>Ratatosk _("ftp directory"|ftp://ftp.diku.dk/diku/users/torbenm/) (_("Ratatosk.tar.Z"|ftp://ftp.diku.dk/diku/users/torbenm/Ratatosk.tar.Z)), a lexer/parser generator for Gofer (_(Haskell)).</li>
  <li>The _(SLK Parser Generator).</li>
  <li>_("SHACC"|http://www.csh.rit.edu/~shaggy/software.html) Shaggy's Homebrew Alternative Compiler Compiler, YACC replacement.</li>
  <li>_("SLG"|http://tedlab.mit.edu/~dr/SLG/index.html) Simple Language Generator, stochastic context-free grammar tool.</li>
  <li>_("SPARK"|http://pages.cpsc.ucalgary.ca/~aycock/spark/) Scanning, Parsing and _(Rewriting|rewrite) Kit.</li>
  <li>_("T-Gen"|http://minnow.cc.gatech.edu/squeak/1419)_("T-Gen - The Parser Generator for Visualworks"|http://st-www.cs.uiuc.edu/users/droberts/tgen2.2.1/tgen.html) _("ftp"|ftp://st.cs.uiuc.edu/pub/Smalltalk/st80_r41/T-gen2.1/) a _(SmallTalk) parser generator.</li>
  <li>_("TGrep2"|http://tedlab.mit.edu/~dr/Tgrep2/index.html) the next-generation search engine for parse trees.</li>
  <li>_("Yacc to LaTeX (y2l)"|http://www.alchar.org/~aedil/Projects/y2l.html) Yacc to Latex, yacc grammar description file as input, _(EBNF) grammar in latex as output.</li>
  <li>_("Yapps"|http://theory.stanford.edu/~amitp/Yapps/) Yet Another _(Python) Parser System.</li>
</ul>
