Difference between revisions of "Lexers Parsers"

From D Wiki
Jump to: navigation, search
(Links for different D parsers and lexers.)
 
(Updated link to std.d.parser)
(9 intermediate revisions by 5 users not shown)
Line 1: Line 1:
Here are a few lexers and parsers for the D programming languages, all written in D:
+
Here are a few lexers and parsers for the D programming languages:
  
 
== Standalone Lexers ==
 
== Standalone Lexers ==
Line 5: Line 5:
 
* [https://github.com/dawgfoto/lexer Martin Nowak's lexer]
 
* [https://github.com/dawgfoto/lexer Martin Nowak's lexer]
  
 +
* [https://github.com/Hackerpilot/libdparse/blob/master/src/std/d/lexer.d (Possibly) the future std.d.lexer]
  
 
== Standalone Parsers ==
 
== Standalone Parsers ==
Line 10: Line 11:
 
* [http://dsource.org/projects/scrapple/browser/trunk/dparser Benjamin Shropshire's dparser].
 
* [http://dsource.org/projects/scrapple/browser/trunk/dparser Benjamin Shropshire's dparser].
  
 +
* [https://github.com/Hackerpilot/libdparse/blob/master/src/std/d/parser.d (Possibly) the future std.d.parser]. VERY INCOMPLETE
 +
 +
* [https://github.com/aBothe/D_Parser/tree/master/DParser2 Alexander Bothe's DParser 2]. Written in C# and used in Mono-D
 +
 +
* [https://github.com/bruno-medeiros/DDT/tree/master/org.dsource.ddt.dtool/src/dtool/parser DTool/DDT parser ]. Part of the DTool project (which has semantic functionality as well). Written in Java and powers DDT. Fairly complete.
  
 
== Parser Generators ==
 
== Parser Generators ==
Line 19: Line 25:
 
* [https://github.com/PhilippeSigaud/Pegged Pegged], a parsing expression grammar (PEG) generator by Philippe Sigaud. Parses at runtime and compile-time.
 
* [https://github.com/PhilippeSigaud/Pegged Pegged], a parsing expression grammar (PEG) generator by Philippe Sigaud. Parses at runtime and compile-time.
  
 +
* [https://github.com/pwil3058/dunnart Dunnart], a parser generator with built in lexical analysis.
  
 
== Parsers and Lexers Inside Compilers ==
 
== Parsers and Lexers Inside Compilers ==
 
* [https://github.com/bhelyer/SDC SDC], the Stupid D Compiler also have a [https://github.com/bhelyer/SDC/blob/master/src/sdc/lexer.d lexer] and a [https://github.com/bhelyer/SDC/tree/master/src/sdc/parser parser] and code for [https://github.com/bhelyer/SDC/tree/master/src/sdc/ast abstract syntax trees].
 
 
 
* [http://code.google.com/p/dil/ Aziz Koeksal's DIL], another D compiler based on Tango. You can find the lexer in [https://github.com/azizk/dil/tree/master/src/dil/lexer src/dil/lexer], the parser in [https://github.com/azizk/dil/tree/master/src/dil/parser src/dil/parser] and the abstract syntax tree code in [https://github.com/azizk/dil/tree/master/src/dil/ast src/dil/ast].
 
* [http://code.google.com/p/dil/ Aziz Koeksal's DIL], another D compiler based on Tango. You can find the lexer in [https://github.com/azizk/dil/tree/master/src/dil/lexer src/dil/lexer], the parser in [https://github.com/azizk/dil/tree/master/src/dil/parser src/dil/parser] and the abstract syntax tree code in [https://github.com/azizk/dil/tree/master/src/dil/ast src/dil/ast].

Revision as of 11:49, 29 July 2014

Here are a few lexers and parsers for the D programming languages:

Standalone Lexers

Standalone Parsers

  • DTool/DDT parser . Part of the DTool project (which has semantic functionality as well). Written in Java and powers DDT. Fairly complete.

Parser Generators

  • Hisayuki Mima's CTPG is a compile-time parser generator.
  • Pegged, a parsing expression grammar (PEG) generator by Philippe Sigaud. Parses at runtime and compile-time.
  • Dunnart, a parser generator with built in lexical analysis.

Parsers and Lexers Inside Compilers