diff --git a/zoo/index.html b/zoo/index.html
index 0c1b3150..802efc37 100644
--- a/zoo/index.html
+++ b/zoo/index.html
@@ -14,7 +14,7 @@
The objective of the Grammar Zoo is to accumulate grammars of contemporary
programming languages, extracted and recovered from language documentation, parser
specifications and other artifacts and make them available in a range of formats.
-
36 grammars and counting
Ada 95 (4 grammars)
- Source: ISO/IEC 8652:1995 Information Technology — Programming Languages — Ada (1995), Annex P, pages 479–493
- Source: Magnus Kempe, Ada 95 Reference Manual, Hypertext version (1994–1997) [ReadMe] [TOC] [Annex]
- Recovered grammar:
+
37 grammars and counting
Ada 95 (4 grammars)
- Extraction tools: [EDD] [Hunter]
- Recovery tools: [correct.xbgf]
Ada 2005
Ada 2005
- Source:
International Standard ISO/IEC 8652/1995(E) with Technical Corrigendum 1 and Amendment 1.
Ada 2005 Reference Manual. Language and Standard Libraries.
Also published as LNCS 4348 with Taft, S.T.; Duff, R.A.; Brukardt, R.L.; Ploedereder, E.; Leroy, P. as editors.
@@ -62,7 +62,7 @@
[DMS BNF]
[SDF]
[Rascal]
-
- Extraction tools: [EDD] [Hunter] [post-extract.xbgf]
- Recovery tools: [correct.xbgf]
- Export tools: [BGF⇒HTML] [BGF⇒BNF] [BGF⇒DMS] [BGF⇒SDF] [BGF⇒Rascal]
ISO C 1999
ISO C 1999
ISO C 2005
- Source: ISO/IEC 9899:TC2 WG14/N1124 Committee Draft (May 2005), Annex A, pages 403–417 [ReadMe]
- Recovered grammar:
+
- Extraction tools: [PDF⇒LLL] [LLL⇒BGF]
ISO C 2005
ISO C 2007
- Source: ISO/IEC 9899:TC3 WG14/N1256 Committee Draft (September 2007), Annex A, pages 403–418 [ReadMe]
- Recovered grammar:
+
- Extraction tools: [PDF⇒LLL] [LLL⇒BGF]
- Recovery tools: [correct.xbgf]
ISO C 2007
ISO C++ 1998
- Source: ISO/IEC 14882:1998(E) Programming languages — C++. First edition (September 1998), Annex A, pages 667–684 [ReadMe]
- Recovered grammar:
+
- Extraction tools: [PDF⇒LLL] [LLL⇒BGF]
- Recovery tools: [correct.xbgf]
ISO C++ 1998
ISO C++ 2008
- Source: ISO/IEC SC22/WG21 N2723=08-0233 Working Draft, Standard for Programming Language C++ (August 2008), Annex A, pages 1089–1101 [ReadMe]
- Recovered grammar:
+
- Extraction tools: [PDF⇒LLL] [LLL⇒BGF]
- Recovery tools: [correct.xbgf]
ISO C++ 2008
ECMA C# 2001
ECMA C# 2002
ECMA C# 2005
ECMA C# 2006
ISO C# 2003 (2 grammars)
ISO C# 2006
Microsoft C# 1.0
Microsoft C# 1.2
Microsoft C# 3.0
Microsoft C# 4.0
Gobo Eiffel
C# 1.x (6 grammars)
C# 2.0 (3 grammars)
C# 3.0
C# 4.0
Eiffel (2 grammars)
ISO Eiffel
- Source: ISO/IEC 25436:2006(E) Information technology — Eiffel: Analysis, Design and Programming Language (2006), Syntax sections collected from pages 30–158 [ReadMe] [ISO]
- Extracted grammar:
+
- Extraction tools: [EDD] [Hunter] [post-extract.xbgf]
- Recovery tools: [complete.xbgf]
Fortran-90
Fortran-90
JDK 1.0 (2 grammars)
J2SE 1.2 “Playground” (2 grammars)
J2SE 5.0 “Tiger” (6 grammars)
- Source: James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Java Language Specification Third Edition (2004) [ReadMe] [HTML] [PDF]
- Readable grammar:
- [Browsable]
- [BGF]
- [EBNF]
-
- [DMS BNF]
- [SDF]
- [Rascal]
-
- Implementable grammar:
- [Browsable]
- [BGF]
- [EBNF]
-
- [DMS BNF]
- [SDF]
- [Rascal]
-
- Extraction tools: [HTML⇒BGF]
- Source: Dieter Habelitz,
Java.g
(2008) [ReadMe] [ANTLR3] - Habelitz grammar:
- [Browsable]
- [BGF]
- [EBNF]
-
- [DMS BNF]
- [SDF]
- [Rascal]
-
- Recovery tools: [ANTLR3.rsc] [antlrpp.py] [StrippedANTLR.g] [post-extraction.xbgf]
- Source: Terence Parr,
Java.g
(2006) [ReadMe] [ANTLR3] - Parr grammar:
- [Browsable]
- [BGF]
- [EBNF]
-
- [DMS BNF]
- [SDF]
- [Rascal]
-
- Recovery tools: [ANTLR3.rsc] [antlrpp.py] [StrippedANTLR.g] [post-extraction.xbgf]
- Source: Michael Stahl,
java15.g
(2004) [ReadMe] [ANTLR2.ZIP] - Stahl grammar:
- [Browsable]
- [BGF]
- [EBNF]
-
- [DMS BNF]
- [SDF]
- [Rascal]
-
- Recovery tools: [ANTLR2.rsc] [antlrpp.py] [StrippedANTLR.g] [post-extraction.xbgf]
- Source: Michael Studman,
java15.g
(2004) [ReadMe] [ANTLR2] - Studman grammar:
- [Browsable]
- [BGF]
- [EBNF]
-
- [DMS BNF]
- [SDF]
- [Rascal]
-
- Recovery tools: [ANTLR2.rsc] [antlrpp.py] [StrippedANTLR.g] [post-extraction.xbgf]
- Export tools: [BGF⇒HTML] [BGF⇒BNF] [BGF⇒DMS] [BGF⇒SDF] [BGF⇒Rascal]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
- R. Lämmel, V. Zaytsev. Comparison of Context-free Grammars Based on Parsing Generated Test Data. [Draft] [Online]
Modula-3
JDK 1.0 aka Java 1 (2 grammars)
- Source: James Gosling, Bill Joy, Guy Steele, Java Language Specification (1996) [ReadMe] [HTML] [PDF]
- Readable grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [HTML⇒BGF]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
- Source: James Gosling, Bill Joy, Guy Steele, Java Language Specification (1996), §19: LALR(1) Grammar, pages 439–453 [ReadMe] [HTML] [PDF]
- Implementable grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [HTML⇒BGF]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
J2SE 1.2 “Playground” aka Java 2 (2 grammars)
- Source: James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Java Language Specification Second Edition (1998) [ReadMe] [HTML] [PDF]
- Readable grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [HTML⇒BGF]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
- Source: James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Java Language Specification Second Edition (1998), §18: Syntax, pages 449–456 [ReadMe] [HTML] [PDF]
- Implementable grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [HTML⇒BGF]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
J2SE 5.0 “Tiger” aka Java 5 (6 grammars)
- Source: James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Java Language Specification Third Edition (2004) [ReadMe] [HTML] [PDF]
- Readable grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [HTML⇒BGF]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
- Source: James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Java Language Specification Third Edition (2004), §18: Syntax, pages 585–596 [ReadMe] [HTML] [PDF]
- Implementable grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [HTML⇒BGF]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. SCAM 2009. [SCAM] [Abstract] [Paper] [Journal Paper] [Slides]
- R. Lämmel, V. Zaytsev. Reverse Engineering Grammar Relationships. WSR 2010. [WSR] [Abstract] [Slides]
- R. Lämmel, V. Zaytsev. Recovering Grammar Relationships for the Java Language Specification. ACM CRR; SQJ 19:2. [SQJ] [arXiv] [Paper]
Modula-3 (2 grammars)
- Source: Luca Cardelli, James Donahue,
+ Lucille Glassman, Mick Jordan,
+ Bill Kalsow, Greg Nelson, SRC 052: Modula-3 Report (revised) (1 November 1989), §9 Syntax, pages 56–60 [ReadMe]
- Extracted grammar:
+ [Browsable]
+ [BGF]
+ [EBNF]
+
+ [DMS BNF]
+ [SDF]
+ [Rascal]
+
- Extraction tools: [EDD] [Hunter] [refactor.xbgf]
XPath 1.0
Appendix: Notations and Formats
XPath 1.0
Appendix: Notations and Formats
All grammars are distributed on terms of the CC-BY license
as well as on terms of any other license bound to the source of our research in a way that enforces
- its propagation to derivatives.
The page is maintained by Dr.
Vadim Zaytsev a.k.a. @
grammarware. Last updated: 27/05/2011
[↑SLPS]